title | categories |
---|---|
Python每日一谈|No.4 |
Python每日一谈 |
上面我们谈了数据类型,这篇我们该看下数据结构
Python中的数据结构有list(列表),dict(字典),set(集合), tuple(元祖)
可以对元素进行修改的数据结构有:list(列表),dict(字典),set(集合)
不可以对元素进行修改的数据结构有: tuple(元祖)
-
列表是最常用的,也是最基本的数据结构。
-
使用
[]
来生成一个列表 -
列表的元素可以是,字符串,数字等基本数据类型,也可以是列表,元祖等其余数据结构
-
列表是有序的,你可以正向使用,也可以反向使用。
-
列表可以进行的基本操作有索引,切片,加,乘,检查成员。
In [6]: a=[1,2,3,4]
In [35]: type(a)
Out[35]: list
In [7]: b=['a','b','c']
In [8]: c=[a,b]
In [9]: print(a)
[1, 2, 3, 4]
In [10]: print(b)
['a', 'b', 'c']
In [11]: print(c)
[[1, 2, 3, 4], ['a', 'b', 'c']]
#列表索引操作
In [12]: a[1]
Out[12]: 2
In [13]: a[0]
Out[13]: 1
In [14]: a[-1]
Out[14]: 4
In [15]: a[-2]
Out[15]: 3
#列表加操作
In [16]: d = a + b
In [17]: print(d)
[1, 2, 3, 4, 'a', 'b', 'c']
#列表乘操作
In [18]: a*3
Out[18]: [1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]
In [24]: c*2
Out[24]: [[1, 2, 3, 4], ['a', 'b', 'c'], [1, 2, 3, 4], ['a', 'b', 'c']]
#检查成员
In [25]: 1 in a
Out[25]: True
In [26]: 7 in a
Out[26]: False
# 列表切片
In [27]: f = a*3
In [28]: print(f)
[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]
# 一般用法
In [29]: f[0:3]
Out[29]: [1, 2, 3]
In [30]: f[3:]
Out[30]: [4, 1, 2, 3, 4, 1, 2, 3, 4]
In [32]: f[:-3]
Out[32]: [1, 2, 3, 4, 1, 2, 3, 4, 1]
# 步长
# 从f[1]到f[4],每隔两位抽取一个元素
In [34]: f[1:4:2]
Out[34]: [2, 4]
-
元祖是不可修改的
-
使用
( )
来创造一个元祖 -
也可以根据索引来使用元素,或切片
-
不可以修改元祖中的值,但元祖之间可以进行连接
实例
# 创建元祖
In [41]: tup1=(1,2,3,4)
In [42]: tup2=(tup1,tup1)
In [43]: tup2
Out[43]: ((1, 2, 3, 4), (1, 2, 3, 4))
In [44]: type(tup1)
Out[44]: tuple
# 元祖切片
In [45]: tup1[:2]
Out[45]: (1, 2)
# 根据index来使用元祖元素
In [47]: tup1[1]
Out[47]: 2
# 元祖连接
In [48]: tup3 = tup1 + tup2
In [49]: tup3
Out[49]: (1, 2, 3, 4, (1, 2, 3, 4), (1, 2, 3, 4))