内建数据结构
1. 元组
固定长度,不可变的对象序列;
1.1 创建方式
- 逗号分隔:
tup=4,5,6
tup=(1,2,3),(4,5)
- tuple转换函数
tup=tuple('strings')
1.2 访问:通过[ ]
`a=tup[0]`
1.3 特点
1.元组对象不可更改,但对象内部可以修改
2.元组拆包:
tup=1,2,(3,4)
a,b,(c,d)=tup
a,b=1,2
a,b=b,a
元组方法
tup.count()
同列表
2. 列表
2.1 定义
使用中括号,或者list函数来定义
a=[2,3,4]
tup=(1,2,3,4)
b=list(tup)
gen=range(10) #gen此处数据类型为range,不可修改的一串数字序列
a=list(gen)
2.2 列表方法
a.append() #在末尾添加
a.extend() #连接,添加多个内容;效率比+号高
a.insert/pop() #指定位置插入或删除元素
a.remove() # 找到符合要求的第一个元素并移除
a.sort() #排序
2.3 切片:
seq=[1,2,3,4,6,5]
seq[3:4]
seq[1:4]=[4,5] #可以取值,也可以赋值; 左闭右开区间
#负索引:从尾部开始
seq[-4:-1]
#设置步长
seq[::2]
seq[0:1:4]
seq[::-1] #可对列表进行翻转
2.4 内建函数序列
2.4.1 enumerate
#返回(索引,值)的序列
for i,value in enumerate(x):
x[i]=value*2
返回(索引,值)的序列
some_list=['ss','f','eee']
map={}
for i,value in enumerate(some_list):
map[v]=i
2.4.2 sorted
2.4.3 zip
将列表、元组或其他序列的元素配对,构建一个元组构成的列表
seq1=[1,2,3]
seq2=[4,5,6]
x=zip(seq1,seq2) #此时为zip数据类型
x=list(x)
print(x)
#out: [(1, 4), (2, 5), (3, 6)]
seq3=['ture','false']
zip(seq1,seq2,seq,3)
for i,(a,b) in enumerate(zip(seq1,seq2)):
print('{0}:{1} {2}'.format(i,a,b))
3 字典
3.1 定义
- 大括号
x={'x':1,'y':2,'z',3}
3.2 访问、插入、修改
同列表,使用 [ ]
4. 集合
无序、元素唯一的容器
4.1 创建
使用set函数或者使用大括号
c1=set([1,2,3,4])
c2={1,2,3}