Python

python元组(Turple)

2018-03-20  本文已影响271人  学习编程王同学

元组(Turple)与列表类似,不同点是:

创建元组

使用()创建一个元组,每个元组中的值由逗号,分隔:

>>> water = ('water','water','everywhere')
>>> water
('water', 'water', 'everywhere')

这里创建了一个元组,其存储的值依次是'water''water''everywhere'。并且将这个元组赋值给了变量water

创建一个空元组:

>>> water = ()
>>> water
()

创建一个只有一个元素的元组:

>>> water = ('water',)
>>> water
('water',)
>>> type (water)
<class 'tuple'>

需要注意的是,虽然只有一个元素,仍然需要在该元素后面加上逗号,。如果没有,python会把其当做字符串:

>>> water = ('water')
>>> water
'water'
>>> type (water)
<class 'str'>

如果元组中有重复项,可以使用乘号*创建元组:

>>> water = ('fire',) * 3
>>> water
('fire', 'fire', 'fire')

访问元组

可以使用下标索引或者切片来访问元组:

>>> letters
('a', 'b', 'c', 'd', 'e', 'f', 'g')
>>> letters[1]      # 使用下标索引
'b'
>>> letters[-2]
'f'
>>> letters[3:5]    # 使用切片
('d', 'e')

多变量赋值

Python中元组的一个特别之处是,它可以出现在等号=的左侧,此时它是一个变量元组。

>>> a = 1
>>> b = 2
>>> (a, b)
(1, 2)
>>> (b, a) = (a, b)     # a,b互换
>>> (a, b)
(2, 1)

这是我见到过最简单的两个值互换操作了。(b, a) = (a, b)进行的操作是:

  1. 将等号右侧元组第一个值赋值给左侧变量b
  2. 将等号右侧元组第二个值赋值给左侧变量a

可以省略左侧元组的括号:

b, a = (a, b)

删除元组

由于元组不可修改,所以不能删除元组中单个的值,但是可以使用del语句删除整个元组:

>>> letters
('a', 'b', 'c', 'd', 'e', 'f', 'g')
>>> del letters
>>> letters
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'letters' is not defined

元组的一些其他操作

使用加号+连接两个元组:

>>> water1 = ('water', 'water')
>>> water2 = ('everywhere',)
>>> water = water1 + water2     # 连接两个元组
>>> water
('water', 'water', 'everywhere')

len(turple)得到元组的长度(元素个数):

>>> water
('water', 'water', 'everywhere')
>>> len (water)
3

max(turple)获得元组中的最大值,min(turple)获得元组中的最小值:

>>> water
('water', 'water', 'everywhere')
>>> max (water)
'water'
>>> min (water)
'everywhere'
上一篇下一篇

猜你喜欢

热点阅读