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

本文探讨了Python中常见的TypeError,特别是当尝试比较不同数据类型的变量时遇到的问题。提供了如何避免此类错误的方法,包括在比较前进行类型检查的技巧。此外,还详细介绍了Python列表的常见操作,如组合、重复及元素查找。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

数据类型判断

在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])
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值