与列表一样,元组也是序列,两者差别在于元组是不能修改的(这一点和字符串一样)。
创建一个元组
将一些值用逗号隔开,就能自动创建一个元组
>>> 1, 2, 3
(1, 2, 3)
通常采用的做法是:用圆括号将若干被逗号隔开的值括起
>>> (1, 2, 3)
(1, 2, 3)
空元组:
>>> ()
()
只包含一个元素的元组:一个值后面加一个括号
>>> x = (2,)
>>> x
(2,)
>>> type(x)
<class 'tuple'>
>>> y = (3)
>>> y
3
>>> type(y)
<class 'int'>
如果不加逗号,即使使用括号括起,解释器会将它当作一个来值处理。
使用函数tuple 创建元组
同list一样:它将一个序列作为参数,并将其转换为元组。如果参数已经是元组,就原封不动地返回它。
与list 一样,tuple 实际上也不是函数,而是类型。
>>> tuple([1,2,3])
(1, 2, 3)
>>> tuple("abc")
('a', 'b', 'c')
>>> tuple((1,2,3))
(1, 2, 3)
把元组的元素依次赋值给变量
import random
def foo():
return 4, 5, 6
a, b, c = 1, 2, 3
print("{} {} {}".format(a, b, c))
a, b, c = foo()
print("{} {} {}".format(a, b, c))
- 可以把元组的元素一次赋值给一组变量,变量的个数必须等于元组的长度
- 初始化若干变量时使用这种方式使代码更简洁,不必为每个变量写一行赋值操作
- 若一个函数返回固定长度的元组,可用多个变量接收函数的返回值
索引、切片、长度、相加、乘法、in、最大值、最小值
>>> x = (1, 2, 3, 4, 5, 6)
>>> x[0]
1
>>> x[-1]
6
>>> x[2:4]
(3, 4)
>>>
>>> x[::2]
(1, 3, 5)
>>>
>>> len(x)
6
>>>
>>> (1, 2, 3) + (4, 5, 6)
(1, 2, 3, 4, 5, 6)
>>>
>>> (1, 2, 3)* 2
(1, 2, 3, 1, 2, 3)
>>>
>>> 3 in x
True
>>> 10 in x
False
>>> max(x)
6
>>> min(x)
1
count() 和 index() 方法
元组的count和index方法和list一样,前者用于计数,后者用于查找元素位置。
>>> x = (1, 2, 3) * 4
>>> x.count(2)
4
>>> x.index(3)
2
网友评论