美文网首页
Python数据类型判断及列表脚本操作

Python数据类型判断及列表脚本操作

作者: 编程自习室 | 来源:发表于2018-12-17 11:12 被阅读2次

    数据类型判断

    在python(版本3.0以上)使用变量,并进行值比较时。有时候会出现以下错误:

    TypeError: unorderable types: NoneType() < int()

    或者类似的类型错误。

    这是因为一方变量的数据类型不明(python无法判断),所以出错。

    在一般情况下,可以提前对要使用的变量进行定义并赋值,例如:

    var=' ' 或者 var=0

    等等。

    但是,若变量在比较前,是通过调用函数或者其他表达式赋值的,以上方法可能行不通,因为如果调用的函数如果存在错误或者没有输出或者输出类型不对,都会出现类型错误。

    所以可以在比较之前进行变量的类型判断,格式:

    import types

    type(x) is types.IntType

    或者

    type(x) is types.StringType

    以上是判断变量的数据类型是整形还是字符串类型。使用判断语句,如果数据类型正确,则进行变量比较。

    if type(x) is types.IntType:var1<var2

    建议出现此错误时,先查看自己的程序的每一步是否出错。

    列表脚本操作

    列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

    python表达式             结果                      描述

    len([1,2,3])             3                         长度

    [1,2,3]+[4,5,6]             [1,2,3,4,5,6]         组合

    ['Hi!']*4             ['Hi!','Hi!','Hi!','Hi!'] 重复

    3 in [1,2,3]             True                 元素是否存在于列表中

    for x in [1,2,3]:print x,  1 2 3                 迭代

    对于组合操作,还可以进行以下操作得到:

    a=[]b=[1,2,3,4,5,6,7,8,9,0]a.append(b[i:j]+b[j+1:k]+[b[k+1]-m])

    如下实例

    b=[]a=[1,2,3,4,5]b.append(a[0:2]+[a[2]-1])b[[1,2,2]]

    在这个程序中加号+两边任然是列表类型数据,所以是组合操作。

    而以下操作中,加号+前一个是列表,后一个是单一的数,类型不一致,所以出错。

    b=[]

    a=[1,2,3,4,5]

    b.append(a[0:2]+a[2])

    Traceback (most recent call last):

        File "<pyshell#91>",line 1, in <module>

            b.append(a[0:2]+a[2])

    TyoeError: can only concatenate list (not "int") to list​

    对于单一的数值,可以通过添加 [ ] 使其变为列表类型,即 [a[2]]。

    对于字符串的操作与以上是一样的。

    这种操作可以用在循环中,作为动态数存储于读取使用。

    注意

    以下的操作以以上的操作不一样,以下操作是对数的加法运算。

    a.append(b[i]+b[j])

    相关文章

      网友评论

          本文标题:Python数据类型判断及列表脚本操作

          本文链接:https://www.haomeiwen.com/subject/lgjqkqtx.html