郑州市精神文明建设 网站,哪里有做响应式网站的,一起做网店官网17,淄博做网站电话欢迎各位#xff0c;我是Mr数据杨#xff0c;你们的Python导游。今天#xff0c;我要为大家讲解一段特殊的旅程#xff0c;它与《三国演义》有关#xff0c;而我们的主角是元组#xff08;tuple#xff09;。
让我们想象这样一个场景#xff0c;三国演义中的诸葛亮我是Mr数据杨你们的Python导游。今天我要为大家讲解一段特殊的旅程它与《三国演义》有关而我们的主角是元组tuple。
让我们想象这样一个场景三国演义中的诸葛亮赵云关羽就像一个元组他们三人被定义为一个固定的组合。这就像在Python中我们把多个元素组合成一个元组heroes (‘诸葛亮’, ‘赵云’, ‘关羽’)。你不能随便更改三国的历史人物同样元组也是不可变的这就是它的优点之一。
相比于列表元组的不可变特性使得我们的数据更安全就像我们无法随意更改历史一样。而且元组占用的资源更少运行效率更高就好比赵云在战场上的轻装快行。
再讲到元组的分配、打包和解包诸葛亮的智谋赵云的勇猛关羽的义气我们可以轻松地将这些特质分配给他们就像这样wisdom, bravery, loyalty heroes。每个人都有他们的特色就如同元组中的每个元素。
总的来说元组就像是我们的三国英雄他们各有特色不可替代集合在一起成为了一部不朽的历史剧。希望你们在Python的学习旅程中能够更好地理解和运用元组掌握其特性发挥其威力。 文章目录 定义和使用元组元素对比列表的优点元组分配、打包和解包Tuple与List区别 定义和使用元组
t (曹操, 曹丕, 甄姫, 蔡文姫)t
(曹操, 曹丕, 甄姫, 蔡文姫)t[0]
曹操t[-1]
蔡文姫t[1::2]
(曹丕, 蔡文姫)# 可以进行倒序排列
t[::-1]
(蔡文姫, 甄姫, 曹丕, 曹操)# 元组不可修改
t (曹操, 曹丕, 甄姫, 蔡文姫)
t[2] 曹丕k
Traceback (most recent call last):File stdin, line 1, in module
TypeError: tuple object does not support item assignment元素对比列表的优点
处理速度更快。防止被意外修改。字典需要不可变更类型的值作为组件。
# 元素用,分割
a 曹操
b 42
a, 3.14159, b
(曹操, 3.14159, 42)# 定义一个空的元组
t ()
type(t)
class tuple# 定义项目的元组
t (2,)type(t)
class tuplet[0]
2t[-1]
2# 元组单一元素会包含符号
print(t)
(2,)元组分配、打包和解包
可以将包含多个项目的文字元组分配给单个对象。
t
(曹操, 曹丕, 甄姫, 蔡文姫)t[0]
曹操t[-1]
蔡文姫被打包的对象直接被分配新的元组中并解释到各个元组对象。
(s1, s2, s3, s4) ts1, s2, s3, s4 ts1
曹操s2
曹丕s3
甄姫s4
蔡文姫解包时左边的变量个数必须与元组中的值个数相匹配。
(s1, s2, s3) t
Traceback (most recent call last):File stdin, line 1, in module
ValueError: too many values to unpack (expected 3)(s1, s2, s3, s4, s5) t
Traceback (most recent call last):File stdin, line 1, in module
ValueError: not enough values to unpack (expected 5, got 4)打包、解包一步操作
(s1, s2, s3, s4) (曹操, 曹丕, 甄姫, 蔡文姫)s1, s2, s3, s4 曹操, 曹丕, 甄姫, 蔡文姫s1
曹操
s2
曹丕
s3
甄姫
s4
蔡文姫元组互换进行互换赋值。
a 曹操
b 曹丕a, b(曹操, 曹丕)a, b b, a
a, b
(曹丕, 曹操)Tuple与List区别
元组 Tuple对象的有序集合称为元组。与列表的区别在于元组是通过括号 ( () ) 而不是方括号 ( [] ) 中来定义的以及元素不可变。
people_tuple (曹操, 曹丕, 甄姫, 蔡文姫)print(people_tuple )
(曹操, 曹丕, 甄姫, 蔡文姫)people_list
(曹操, 曹丕, 甄姫, 蔡文姫)列表List 和 元组Tuple 可以说是 Python 中最通用、最有用的数据类型。
列表是动态的而元组具有静态特征。
List 与 Tuple 的区别如下
功能说明列表元组元素操作可变不可变迭代耗时耗时多相对较快操作修改执行插入、删除、追加操作仅限访问元素内存消耗消耗内存多消耗内存少内置方法内置方法多内置方法少容错概率易发生变化和错误难发生