第9天:Python tupple(元组)

2019/09/09

by 沉默王二

Python 中的数据结构是通过某种方式组织在一起的数据元素的集合,这些数据元素可以是数字、字符、甚至可以是其他数据结构 在 Python 中,最基本的数据结构是序列(列表和元组),序列中的每个元素都有一个序号(元素的具体位置),这个序号叫索引,索引下标从 0 开始,以此类推……

  • Python 的元组与列表类似,不同之处在于元组的元素不能修改。

  • 元组使用小括号(),列表使用方括号[]。

1. 元组基本操作

1.1 创建元组

元组创建很简单,只需要在括号中添加元素(不需要括号也可以),并使用逗号隔开即可。

>>> tup1 = ('baidu', 'google', 12, 34); 
>>> tup2 = (1, 2, 3, 4, 5 );
>>> tup3 = "a", "b", "c", "d";

# 创建空元组
>>> tup4 = ()

# 查看tup4和tup3的类型
>>> type(tup4)
<class 'tuple'>
>>> type(tup3)
<class 'tuple'>

==注意:== 元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用,如下:

>>> TupNum = (34)   
>>> type(TupNum)   # 不加逗号是整型
<class 'int'>
>>> TupNum = (34,)
>>> type(TupNum)  # 加上逗号变元组
<class 'tuple'>

元组与字符串类似,下标索引从 0 开始,可以对元组进行截取,组合等操作。

1.2 访问元组

元组的访问和序列访问元素一样,都是通过下标索引进行访问操作

>>> tup1 = ('baidu', 'google',1,2)
>>> tup2 = (1, 2, 3, 4, 5, 6, 7)
>>> tup1[0:2]
('baidu', 'google')
>>> tup2[1:4]
(2, 3, 4)

1.3 修改元组

元组中的值一旦定义就不能修改,但是我们可以通过元组与元组之间的连接关系来对元组进行修改,例如:

>>> tup1 = ('baidu', 'google',1,2)
>>> tup2 = (1, 2, 3, 4, 5, 6, 7)
>>> tup1 + tup2
('baidu', 'google', 1, 2, 1, 2, 3, 4, 5, 6, 7)

==注意:== 以下修改元组属于非法操作,因为元组不支持通过索引列来修改,只能对元组进行复制和连接操作

==tup1[0] = 100== (不能进行此操作)

1.4 删除元组

由于元组的不可修改性,所以元组中的元素值是不允许删除的,但我们可以使用 del 语句来删除整个元组,如下实例:

#!/usr/bin/python3
 
tup1 = ('baidu', 'google',1,2)
 
print (tup)
del tup;
print ("删除后的元组 tup : ")
print (tup)

# 报错信息如下,证明整个元组已经被删除
删除后的元组 tup1 : 
Traceback (most recent call last):
  File "tupple.py", line 29, in <module>
    print(tup1)
NameError: name 'tup1' is not defined

2 元组运算符

与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。总而言之对整个元组进行一些运算后就会生成一个新的元组。

2.1 元组求长度

元组求长度使用运算函数 len ,如下

# 求元组tup1的长度
>>> tup1 = ('baidu', 'google',1,2)
>>> len(tup1)
4

2.2 连接元组

两个甚至对个元组的连接使用 + 连接符,例如:

>>> tup1 = (1,2,3)
>>> tup2 = (4,5,6)
>>> tup3 = (7,8,9)
>>> tup1 + tup2 + tup3
(1, 2, 3, 4, 5, 6, 7, 8, 9)

2.3 复制元组

tup1 = ('abc')
# 元组复制需要加上分隔符后面复制的内容就按照分隔符分隔开
(tup1,) * 3
('abc', 'abc', 'abc')

2.4 判断元素

判断元组中元素是否存在使用关键字 in 进行判断,判断结果返回布尔值

>>> tup1
'abc'
>>> 'a' in tup1
True

2.5 元组中指定位置元素访问

和序列一样,元组中的元素同样可以使用索引号访问指定位置的元素,例如:

>>> content = ('hello','world','!')
>>> content
('hello', 'world', '!')
>>> content[1:]
('world', '!')
>>> content[:2]
('hello', 'world')
>>> content[-1]
'!'
>>> content[-2]
'world'

3 元组内置函数

和列表一样,元组同样也拥有一些内置函数,这些函数用于判元组中的元素大小以及将元组做相应的转换

#计算元组元素个数。
len(tuple)

#返回元组中元素最大值。
max(tuple)

#返回元组中元素最小值。
	min(tuple)
	
#将列表转换为元组。
	tuple(seq)

总结

本节给大家介绍了 Python 数据结构之元组的操作与使用,对 Python 工程师使用列表提供了支撑。

示例代码:Python-100-days-day009


微信扫描二维码,关注我的公众号

(关注后回复 1024 获取程序员专属精华资料!

点击了解:全网唯二以程序员为主题的漫画公众号

Show Disqus Comments

Post Directory

扫码关注公众号:纯洁的微笑
发送 290992
即可立即永久解锁本站全部文章