在上一节中,我们学习了列表list的用法,之前还讨论过的python数据结构包括:python集合set的用法以及Python字典(Dictionary)的用法。元组Tuple是Python对象的集合,类似于列表。存储在元组tuple中的值序列可以是任何类型的,并且它们是由整数索引的。列表和元组之间的重要区别是,元组是不可变的,而且,元组是可散列化的,而列表不是。
元组的值在语法上由逗号分隔,虽然没有必要,但更常见的是通过关闭括号中的值序列来定义元组tuple,这有助于更容易地理解Python元组。
元组是不可变的,通常它们包含一个异构元素序列,可以通过解包或索引(对于命名元组,甚至可以通过属性)访问这些元素。列表是可变的,它们的元素通常是同构的,通过遍历列表来访问它们。
1、创建一个元组tuple
在Python中,元组是通过放置由逗号分隔的值序列来创建的,使用或不使用括号对数据序列进行分组。元组可以包含任意数量的元素和任意数据类型(如字符串、整数、列表等)。元组也可以用单个元素创建,但这有点棘手。仅在括号中有一个元素是不够的,必须有一个逗号才能使它成为元组。
注意不使用括号创建的Python元组称为元组打包。
# 创建空元组tuple
Tuple1 = ()
print (Tuple1)
# 使用字符串创建元组
Tuple1 = ('A', 'B')
print(Tuple1)
# 使用列表创建元组
list1 = [1, 2, 4, 5, 6]
print(tuple(list1))
# 迭代创建元组
Tuple1 = ('AAA')
n = 5
for i in range(int(n)):
Tuple1 = (Tuple1,)
print(Tuple1)
# 使用内置函数创建元组
Tuple1 = tuple('BBB')
print(Tuple1)
# 使用混合类型创建元组
Tuple1 = (5, 'CCC', 7, 'DDD')
print(Tuple1)
# 创建嵌套元组
Tuple1 = (0, 1, 2, 3)
Tuple2 = ('python', 'c++')
Tuple3 = (Tuple1, Tuple2)
print(Tuple3)
# 创建重复元组
Tuple1 = ('AAA',) * 3
print(Tuple1)
2、元组连接
元组连接是两个或多个元组连接的过程。连接是通过使用+运算符来完成的。元组的连接总是从原始元组的末尾开始,其他算术操作不适用于元组。
注意:只有相同的数据类型才能与连接组合在一起,如果将列表和元组组合在一起,就会出现错误。
Tuple1 = (0, 1, 2, 3)
Tuple2 = ('AAA', 'CCC', 'BBB')
Tuple3 = Tuple1 + Tuple2
print(Tuple1)
print(Tuple2)
print(Tuple3)
3、元组切片
对元组进行切片是为了从元组获取特定的范围或子元素切片。也可以对列表和数组进行切片,在列表中建立索引的结果是获取单个元素,而切片允许获取一组元素。
注意:负的递增值也可以用来反转元组的顺序
Tuple1 = tuple('ABCDEFGHIJKLMNO')
# 删除第一个元素
print(Tuple1[1:])
# 逆序元组
print(Tuple1[::-1])
print(Tuple1[4:9])
4、删除元组
元组是不可变的,因此不允许删除它的一部分,使用del()方法删除整个元组。
注意:删除后的元组打印结果为错误。
Tuple1 = (0, 1, 2, 3, 4)
del Tuple1
print(Tuple1)
评论前必须登录!
注册