Day 01——Task01:变量、运算符与数据类型
Day 02——Task02:条件与循环
Day 03——Task03:列表与元组(上)
Day 04——Task03:列表与元组(下)
Day 05——Task04:字符串与序列
Day 06——Task05:函数与Lambda表达式(上)
Day 07——Task05:函数与Lambda表达式(下)
Day 08——Task06:字典与集合
Day 09——Task07:文件与文件系统(上)
Day 10——Task07:文件与文件系统(下)
Day 11——Task08:异常处理
Day 12——Task09:else 与 with 语句
Day 13——Task10:类与对象(上)
Day 14——Task10:类与对象(下)
Day 15——Task11:魔法方法(上)
Day 16——Task11:魔法方法(下)
Day 17——Task12:模块
文章目录
在上一篇中,我们详细了解了列表的各个方法与函数,今天我们来介绍一下“戴上了枷锁的列表”——元组
2. 元组Tuple
- Python 的元组与列表类似,不同之处在于元组的元素不能修改。
- 元组使用小括号,列表使用方括号。
- 元组创建很简单,只需要在小括号中添加元素,并使用逗号隔开即可。
- 同列表一样,空元组的创建只需要一对小括号既可。
tuple1 = ('Mive','-Vax', 5, 3)
tuple2 = (1, 2, 3, 4, 5 )
tuple3 = ('Mive','-Vax', [3, 5])
empty = ()
注意:当元组中只包含一个元素时,需要在元素后面添加逗号。元组的创建其实不需要小括号而是在元素后面添加一个逗号。
tuple1 = (5)
print(type(tuple1))
tuple1 = (5,)
print(type(tuple1))
tuple1 = 5, 3, 8
print(type(tuple1))
# <class 'int'>
# <class 'tuple'>
# <class 'tuple'>
与字符串的索引一样,元组索引从0开始。元组可以进行截取、组合等。
2.1 访问元组中的值
使用下标索引来访问元组中的值,同样你也可以使用方括号的形式截取字符,如下所示:
tuple1 = ('Mive','-Vax', 5, 3)
sample = (1, 2, 3, 4, 5, 6, 7, 8, 9 )
print ("tuple1[0]: ", tuple1[0])
print ("sample[3:5]: ", sample[3:5])
print ("sample[-5:-3]: ", sample[-5:-3])
# tuple1[0]: Mive
# sample[3:5]: (4, 5)
# sample[-5:-3]: (5, 6)
2.2 元组的更新和删除
元组的元素是无法修改的,所以若要修改元组的元素,需要使用到元组分片与拼接。
2.2.1 向元组添加元素
tuple1 = ('Mive','-Vax', 5, 3)
sample = (1, 2, 3)
tuple1 = tuple1[:1] + sample + tuple1[1:]
print (tuple1)
# ('Mive', 1, 2, 3, '-Vax', 5, 3)
2.2.2 向元组修改元素
需要定位到要修改元素的索引值,以及要被修改之后的值。
tuple1 = ('Mive','-Vax', 5, 3)
tuple1 = tuple1[:2] + (8,) + tuple1[3:]
print (tuple1)
# ('Mive', '-Vax', 8, 3)
2.2.3 向元组删除元素
需要定位到被删除元素的索引值。
tuple1 = ('Mive','-Vax', 5, 3)
tuple1 = tuple1[:2] + tuple1[3:]
print (tuple1)
# ('Mive', '-Vax', 3)
2.3 del 语句删除元组
我们可以使用del语句来删除整个元组。
tuple1 = ('Mive','-Vax', 5, 3)
del tuple1
print (tuple1)
# NameError: name 'tuple1' is not defined
2.4 元组的常用操作符
2.4.1比较操作符
即>
、>=
、<
、<=
、==
、!=
。
tuple0 = (5, 3)
tuple1 = (5, 31)
tuple2 = (51, 3)
print(tuple0 > tuple2) # False
print(tuple0 > tuple1) # False
print(tuple1 > tuple2) # False
2.4.2逻辑操作符
即and
、or
、not
。
tuple0 = (5, 3)
tuple1 = (5, 31)
tuple2 = (51, 3)
print(tuple0 > tuple2 and tuple0 > tuple1) # False
print(tuple0 > tuple2 or tuple0 > tuple1) # False
print(not(tuple1 > tuple2)) # True
2.4.3成员关系操作符
即in
、not in
。
tuple1 = ('Mive', '-Vax', 5, 3)
print(5 in tuple1) # True
print(51 not in tuple1) # True
2.4.4 * 重复操作符
在元组中使用 ’ * ’ 重复操作符 ,可以重复复制拼接。
tuple1 = ('Mive', '-Vax', 5, 3)
print(tuple1 * 3)
# ('Mive', '-Vax', 5, 3, 'Mive', '-Vax', 5, 3, 'Mive', '-Vax', 5, 3)
2.5元组函数
2.5.1 len(tuple) 函数
len(tuple) 函数返回元组元素个数。
tuple1 = ('Mive', '-Vax', 5, 3)
print (len(tuple1)) # 4
tuple2=tuple(range(5))
print (tuple2, len(tuple2)) # (0, 1, 2, 3, 4) 5
2.5.2 max(tuple) 函数
max(tuple) 函数返回元组元素最大值。
tuple1 = ('Mive', '-Vax', '5', '3')
tuple2=tuple(range(5))
print ("tuple1 最大元素值 : ", max(tuple1))
print ("tuple2 最大元素值 : ", max(tuple2))
# tuple1 最大元素值 : Mive
# tuple2 最大元素值 : 4
2.5.3 min(tuple) 函数
min(tuple) 函数返回元组元素最小值。
tuple1 = ('Mive', '-Vax', '5', '3')
tuple2=tuple(range(5))
print ("tuple1 最小元素值 : ", min(tuple1))
print ("tuple2 最小元素值 : ", min(tuple2))
# tuple1 最小元素值 : -Vax
# tuple2 最小元素值 : 0
2.5.4 tuple(seq)函数
将列表转换为元组。
list1 = ['Mive', '-Vax', '5', '3']
print (list1, type(list1))
tuple1=tuple(list1)
print (tuple1, type(tuple1))
# ['Mive', '-Vax', '5', '3'] <class 'list'>
# ('Mive', '-Vax', '5', '3') <class 'tuple'>
3.总结
列表与元组在Python编程中十分常用,需要熟练掌握其中的特点与区别才可。