元祖tuple,是序列类型的一种扩展
1.定义形式
tuuple(a) #a为tuple类型
a = (3, 2.5,"abc", ['1', '2.4', "abc"]) #各种类型的数据在括号里面以逗号分隔的形式
2.索引和切片(基本和字符串类型以及list类型相同)
>>>a[0]
3
>>>a[0:2]
(3,2.5)
3.序列函数
>>>a.count(3) #用于统计数据“3”在tuple型数据a出现的次数,不存在则记为0
1
>>>a.index("abc", i, j) #从i到j返回“abc”在a中第一次出现的下标位置,查询字符串时记得带引号
2
>>>len(a) #直接返回a的元素个数或长度
4
4.tuple与list区别(主要体现在tuple中更改数据时会报错,list则可以正常更改)
- 由于list为可变数据类型,在字典中list不可作为key值
- 假定a为一tuple类型数据,a += (3,) 这一操作实际上是创建了一个新的tuple型数据,再将原来的数据和加上之后的数据放入,因此前后两个a的id不一致
5. 6种序列操作符
- in #某个元素在元组中,则返回Ture,否则Flase
- not in #in 的反操作
- a + b #将两个元组连接在一起
- n*a a*n #复制操作
- a[-1] #索引操作
- a[ : : ] #切片
操作示例
>>> b = "abc","de","rfg"
>>> c = 3*b
>>> c
('abc', 'de', 'rfg', 'abc', 'de', 'rfg', 'abc', 'de', 'rfg')
>>> d = "first","second",c
>>> d[-1][0]
'abc'
列表类型
列表类型可以使用序列的所有基本操作和函数
1.定义
使用 [] 或者list() 创建;
在进行 list(list_b)
list_a = list_b 时,list_a,liast_b两个名称共用一个列表
2.操作
list_a [i] = x | 通过等号对list中的元素赋值 |
list_a [i:j:k] = list_b | 用列表list_b替换list_a切片后对应的子列 |
list_a += list_b | 将list_b添加到list_a中 |
list_a *=n | 将liat_a列表自身重复n次 |
del list_a [i] | 删除列表中下标为i的元素 |
del list_a [i:j:k] | 删除从i到j以k为步长的所有元素 |
3.函数(对列表aa和bb进行操作)
aa.apppend(x) | 在aa的末尾插入x |
aa.insert(i,x) | 在aa的i位置插入元素x |
aa.reverse() | 将列表反转 |
aa.remove(x) | 删除aa中第一个值为x的元素 |
aa.pop(i) | 返回并删除aa中位置为i的元素 |
bb = aa.copy() | 将aa的所有元素赋值给bb,aa中元素仍然保留 |
aa.clear() | 清除aa中的所有元素 |
max(aa) min(aa) | aa中全部为同一类型数据时方可比较 |