背景:
最近在学习自动化测试,发现基本是用python写的脚本
就顺带好好学一学python,准备以后也深入学习一下
今天简单的介绍一下python里面常用的数据结构吧
Python数据结构
原生数据结构
元组 Tuple()
tup1 = ('Python','Java',1,2)
tup2 = (9527,)
注意:
1、使用()、tuple()创建元组,元组可以为空且元素类型可以不同;
2、若元组中仅包含一个数字,则应该添加逗号以区别运算符号:tup=(1,);
3、元组一旦创建就无法对其元素进行增加、删除、修改。
元组的操作:
1、查找
print(tup1[0]) #使用下标索引访问元素
print(tup1[1:3]) #访问下标索引为1到3的元素
2、‘删除’
用 del 删除指定的元素对象
3、‘连接’和‘复制’
tup3 = tup1+tup2
tup4 = tup2*3
4、其他操作
len()方法返回元祖的个数
...
5、转换
print(list(tup1)) #转换为列表
print(tup1._str_()) #转换为字符串
列表 list()
一维列表,使用[]可以创建一个列表对象
列表是一种有序的集合,可以随时添加和删除其中的元素
lis1 = [‘Python’,9527,8848,true]
多维列表
使用[]嵌套创建多维列表
lis2 = [‘Python’,9527,8848,true,[‘Python’,9527,8848,true]]
列表的操作:
1、查询
lis1[1:4] #返回第2个到第3个元素的列表对象
lis1[::2] #从第一个元素开始,依次间隔为2返回列表对象
lis[n] #返回下标为n的元素,负数则从最后一位开始第n个元素
2、增加
.append() #在末尾增加新的元素,也可以增加列表,变成多维列表
3、删除
.remove() #删除指定下标的元素,不存在则报错
.pop() #删除指定下标的元素,默认从最后一位开始
4、修改
lis1[1]=5 #可以直接将下标为1的元素值修改成5
5、其他
.reverse() #函数可以使列表倒置;
.len() #返回列表元素个数
.sort() #列表元素升序排列
6、转换
注意:单个列表不可以转换为字典
集合 set()
set1 = {'Python','Java',1,2}
集合不会出现重复值,所有元素按照一定的顺序排列
若元素为数字则按数字大小排列
使用set()函数创建集合会自动的拆分多个字母组成的字符串
例如:
a = set('python111')
print(a)
b = set(('python','java'))
print(b)
集合的操作
1、查询
'p' in a #返回boolean值,查询元素是否在集合中
2、增加
.add(‘mysql’) #表示在集合中添加‘mysql’元素
.update('net') #表示在集合中依次按顺序添加‘n’‘e’‘t’元素
3、删除
.remove() #将集合中的元素删除,不存在就会报错
.discard() #删除集合中指定元素,不存在不会报错
.pop() #随机删除元素
.clear() #清空集合
4、其他
.len() #集合长度
.copy() #复制集合
5、集合的运算
‘-’表示求差
‘&’表示求和
‘|’表示求并集
'^'表示两个集合的并集减去交集
字典 Dictionary()
1、直接创建字典
dict1 = {'name':'xiaoming','age':18}
2、内置函数dict()方法创建字典
a = dict(name='zhang',age=22)
3、使用zip方法返回元组组成的列表,快速构成字典
b = dict(zip('xyz','123'))
#输出为:{'x':'1','y':'2','z':'3'}
字典的操作
1、查询
dict1['name']
dict1.get['age']
2、增加
dict1['sex']='man' #添加键值对
3、修改
dict2 = {'class':404}
dict1.updata(dict2) #增加或者修改键值对
4、删除
del dict1
dict1.pop()
5、转换
list(dict1.values()) #值转换List
list(dist2.keys()) #键转换为List
还有其他数据结构,等以后升入学习再补充
瑞斯拜