元组
元组是一个不可变列表。元组一旦创建就不能以任何方式修改。
为什么需要元组?
- 在保护任何数据免遭更改(有意或无意)的情况下。
- 元组比列表占用更少的内存空间并且速度更快。
- 从一个函数返回多个值。
- 元组可以用作字典键(稍后会详细介绍)。
创建元组
1 种方式:类似于列表,但带有括号
<表>
<正文>
1个
2个
3
|
一 = (1,2,3,4,5)
打印(类型(a)) # 类“元组”
打印(一) # (1, 2, 3, 4, 5)
|
表>
2 种方式: 使用 tuple() 函数
<表>
<正文>
1个
2个
3个
|
b = 元组((1,2,3,4,5))
打印(类型(b)) # <类“元组”>
打印(b) # (1, 2, 3, 4, 5)
|
表>
你要记住!
- 元组是一个不可变的列表。
- 元组的元素可以是不同的类型。
- 您可以使用
tuple() 函数或通过在括号中列出元素来创建元组。
|
元组特征
1)可以不用括号给元组赋值/
例如,您可以像这样创建一个元组:
<表>
<正文>
1个
2个
3个
|
a = 1,2,3,4,5
print(a[3]) # 4 元组的一个元素可以像列表的元素一样被访问,
# 通过在方括号中指定元素索引.
|
表>
2) 要声明包含一个元素的元组,您需要使用尾随逗号:
<表>
<正文>
1个
2个
3个
4
|
a = 'a';
b = 'b',
打印(类型(b)) #<类'元组>>
print(type(a)) # <class 'str>
|
表>
3)可以将元组元素的值赋值给各个变量:
<表>
<正文>
1个
2个
3
|
我的元组 = (1, 2, 3, 4, 5)
a, b, c, d, e = my_tuple
打印(c) #3
|
表>
下划线 _ 可以用作不必要的变量
<表>
<正文>
1个
2个
3
|
我的元组 = (1, 2, 3)
a, _, _ = my_tuple
打印(一) #1
|
表>
变量个数必须与数值匹配元组的元素!
4) 元组可以包含各种嵌套元素。在这种情况下,当引用嵌套的 元素时,您必须使用额外的方括号
<表>
<正文>
1个
2
|
my_tuple = (('a', 'b', 'c'), [1, 2], ((1, 'a'; ), ('b', 'c')))
print(my_tuple[2][1]) # ('b', 'c')
|
表>
|
指的是元素。嵌套元组
元组可以包含其他元组作为元素。此外,列表、字符串等也可以用作元组的元素。
访问元素类似于访问列表的元素,在方括号中指定元素的索引。索引从零开始。
引用嵌套元素时,必须使用额外的方括号。
my_tuple = (('a', 'b', 'c'), [1, 2], ((1, 'a'; ), ('b', 'c')))
打印(我的元组[2][1]) # ('b', 'c')
|
比较元组
比较元组时:
- 数字按值比较;
- 按字典顺序排列的字符串;
- 如果相同位置的元素相等,则比较以下元素;
- 元素的比较将发生在第一个不等式之前;
- 比较时,元素必须转换为相同类型(不能比较数字和字符串)。
例子
<表>
<正文>
1个
2个
3个
4个
5个
6个
7
8个
9
10
十一
12
|
A=4
B=8
C = 'a',
D = 'z',
E = (14, '最大', '最小')
F = (14, '最大', '最小')
K=999
打印(A < B) #真
打印(C < D) #真
打印(E > F) #真
打印(K < F) #错了
打印(C < K) # 类型错误:'<'不支持
# 在“str”实例之间和“int”
|
表>
|
切片
切片可以像列表一样执行。
应该记住,通过索引或切片 ( slice ) 获取元素,我们不会以任何方式更改元组,我们只是复制其中的一部分以供进一步使用(例如,用于打印, 一些计算等.p.).
切片语法
my_tuple[start:stop:step] # 开始、停止和步进
|
元组连接
连接元组以创建新对象是可能的(连接,类似于字符串)。
<表>
<正文>
1个
2个
3个
4
|
x = (1,2,3,4)
y = (5,6,7,8)
z = x + y
打印(z) # (1, 2, 3, 4, 5, 6, 7, 8)
|
表>
在乘法运算期间,元组会重复多次(类似于字符串乘法)。
<表>
<正文>
1个
2个
3
|
x = (1,2,3,4)
z = x*2
print(z) # (1, 2, 3, 4, 1, 2, 3, 4)
|
表>
删除一个元组
元组操作和方法类似于列表操作和方法。除了那些改变元组元素的。
由于不变性,无法添加或删除包含在 tuple 中的元素。但是,可以使用 del 运算符删除元组本身。
<表>
<正文>
1个
2
|
学生 = (2007, 'Ivan', 'Ivanov', '9-A', False)
德尔学生
|
表>
|
使用元组的方法
使用元组的方法类似于使用列表的方法,除了改变元组的方法。由于元组的不变性,此类方法不可用。它们可以通过创建一个新的元组来应用。
元组排序示例
您可以使用 sorted() 函数轻松地对元组进行排序。
<表>
<正文>
1个
2个
3个
4
|
一 = (5, 3, 2, 1, 4)
打印(排序(a)) # [1, 2, 3, 4, 5]
a = tuple(排序(a))
打印(一) # (1, 2, 3, 4, 5)
|
表>
请注意, append() 、 extend() 、 remove() 等方法不适用于 元组 和<代码>弹出()代码>。
|