富贵和你一起复习Python(第03篇)— 元组

继续复习Python,今日复习——元组,中间会有自己的心得体会,要是有什么错误或者补充可直接评论或者私信哟。

1. 简说元组

与列表相似,元组也是Python的一个重要的序列结构,但元组不属于可变序列。元组一旦创建,不可以改变其中的值,也无法为元组增加或删除元素。

元组(tuple)不可变序列,不可变序列,不可变序列

元组的创建与删除:

#创建一个空元组
a = ()
#当元组中只有一个元素的时候,在元素结尾一定要加 ‘ ,’
a = ('1',)
#使用 tuple() 将其他类型的序列转换为元组
list = [1,2,3]
a = tuple(list)

对于元组而言,只能使用del命令删除整个元组对象,而不能只删除部分元素,因为元组属于不可变序列

2. 元组与列表的区别

(1)列表属于可变序列,可以随意的修改列表中的元素以及增加和删除列表元素。元组属于不可变序列,一旦定义就不允许通过任何方式修改。
(2)元组没有 remove(), append(), insert()等方法,但元组支持切片操作,仅限于元素的遍历与访问。
(3)列表通过 list() 来转换其它可迭代型数据,元组通过 tuple() 来进行转换。
(4)元组的访问处理速度比列表快。

3. 序列解包

序列解包是Python特有的语法,它将一个序列(或任何可迭代对象)解开,并将得到的值存储到一系列变量中。

序列解包是一个非常重要和常用的方法,可以使用非常简洁的形式完成复杂强大的功能,大幅度提高了代码的可读性。

a,b,c = [1,2,3]
#或
x = (1,2,3)
(a,b,c) = x

序列解包也适用于字典。

a = ['a':1,'b':2,'c':3]
b,c,d = a.items()

4. 生成器推导式

生成器推导式类似于列表推导式,只是生成器推导式使用圆括号而不是列表推导式使用的方括号。生成器推导式的结果十一个生成器对象,不是列表,也不是元组。可以用相应的转化方法将其转换为元组或列表。或使用(python 3.x)next()方法进行对其元素遍历。

a = (i  * i for i in range(10))
tuple(a)

元组是不可变序列!

猜你喜欢

转载自blog.csdn.net/zc666ying/article/details/105878406
今日推荐