python数据类型——列表和元组类型
列表类型(list)
定义一个列表类型很简单:
l = ['a','b','c','d','e','f']
变量l即为列表类型,可以用type方法查看:
print(type(l))
列表的增删改查
对数据的操作最重要的无非是增、删、改、查这四个操作
查找
首先,我们理解一个序列的索引(下标) ,列表中每个元素都有自己的一个下标,下标从0开始,倒数从-1开始
索引出列表中的元素:
print(l[1]) print(l[3])
切片,格式: l[start : end : step],start是切片起点索引,end是切片终点索引,但切片结果不包括终点索引的值(顾头不顾尾,只索引到终点之前的那个元素)。step是步长默认是1,若是负数,将从后往前索引:
print(l[1:])#取到最后 print(l[1:-1])#取到倒数第二值 print(l[1:-1:1])#从左到右一个一个去取 print(l[1::2])#从左到右隔一个去取
数出l中元素a的个数:
print(l.count('a'))#数出元素a的个数
查找元素a的下标,若有多个a,可在index中输入第二个参数,第二个参数为起始查找下标:
x=l.index('a')#查出a元素的下标 print(x) print(l.index('a',x+1))#从下标为x+1的元素开始查看a的下标
查找f是否在列表中,返回布尔值:
print('f' in l)
增加
在列表最后增加元素:
l.append("x") print(l)
在指定下标位置添加元素,第一个参数为下标,第二个参数为元素:
l.insert(1,'y')
把b列表扩展到a列表上:
a = ['1','2','3'] b = ['4','5','6'] a.extend(b) print(a,b)
修改
修改a中某个或多个值,a[index] = "新的值":
a[1]='m' a[2:4]=['x','y'] print(a)
删除
删除l中某个元素:
l.remove('a')#或者l.remove(l[0])或者del a[0] print(l)
删除下标为1的元素,pop后括号中不填则默认删除最后一个元素,注意pop方法有返回值,返回值为删除的元素:
l.pop(1)
print(l)
删除a列表
del a
清空列表
a.clear()
排序
自动排序a中的元素:
a.sort() print(a)
反转a中所有元素:
a.reverse()
print(a)
列表操作包含以下函数:
1、cmp(list1, list2):比较两个列表的元素
2、len(list):列表元素个数
3、max(list):返回列表元素最大值
4、min(list):返回列表元素最小值
5、list(seq):将元组转换为列表
元组(Tuple)
元组与列表及其相似,不同在于元组不可修改,即在定义后只可以读取。可以理解为只读型列表
tup1=()#空元祖 tup2=(1,)#一个元素的元组,后面要加个逗号
元组的创建,需要注意的是,当元组内元素只有一个的时候,需要在结尾加上","否则该括号将会被认定为运算符的括号,例中tup2若不加括号,“1”将被认定为一个整数。
元组的元素不能修改与删除,但元组可以被删除,方法与列表相同:
del tup1
查找的方法与列表相同,自行尝试。同样支持列表操作的函数。