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

枫铃4年前 (2021-06-26)Python319

数据类型判断

在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

建议出现此错误时,先查看自己的程序的每一步是否出错。
列表脚本操作
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
在这里插入图片描述
对于组合操作,还可以进行以下操作得到:

 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同步windows和linux文件

写python脚本的初衷,每次在windows编辑完文件后,想同步到linux上去,只能够登录服务器,...

爬虫基本原理

爬虫基本原理 一、爬虫是什么? 百度百科和维基百科对网络爬虫的定义:简单来说爬虫就是抓取目标网站内容的工具,一般是根据定义的行...

Django 函数和方法的区别

函数和方法的区别 1、函数要手动传self,方法不用传 2、如果是一个函数,用类名去调用,如果是一个方法...

Django 知识补漏单例模式

单例模式:(说白了就是)创建一个类的实例。在 Python 中,我们可以用多种方法来实现单例模式&#x...

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python mysql 索引原理与慢查询优化

一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。