Python学习之[4]——元组

来源:互联网 发布:淘宝网旺旺卖家版 编辑:程序博客网 时间:2024/06/05 00:22

元组的创建
Python3 中元组按照以下方式创建:

>>>tuple1=('Python', 'is', 'a', 'glue', 'language')

也可以采用tuple函数一个列表转化为一个元组

>>> list1=['this','is','a','list']>>> list2tuple=tuple(list1)>>> list2tuple('this', 'is', 'a', 'list')

元组(tuple)是一种静态的(immutable)或者说是不可变(unchangeable)的数据结构,里面的元素按照一定的顺序排列。它是静态的,所以元组里的元素不能被修改。
元组用于给数据分组。元组中的每一个元素称之为“项”(item)。
元组中的值被包装在括号中,并用逗号分隔,空元组可以写成tuple1=(),不过只有一项元素的元组必须使用逗号:coral = (“blue coral”,)。
任意无符号的对象以逗号隔开,默认为元组,因此可以按照以下方式创建。

>>> tuple2=123,>>> tuple3=123,34

可以使用print()函数打印元组,会得到如下的输出,其中元组依然‘()’用括号包裹。

>>> print(tuple1)('Python', 'is', 'a', 'glue', 'language')>>> print(tuple2,tuple3)(123,) (123, 34)

当你试图理解Python中的元组或者其他集合类型的数据结构时,去想一下电脑中存在的不同集合是有帮助的:不同类型文件的排列,你的歌曲清单,浏览器中的书签,你的邮箱,你在流媒体上获得的视频集合等等。
元组和列表很像,不过元组中的值是不可修改的。也正因为如此,当你在代码中使用元组时,就意味着告诉他人你不想集合中的数据被修改。同时,因为元组中的值不可变,因此相比于使用列表,你的代码能通过使用元组得到优化。
元组的索引
作为一个有序的元素集合,元组中的任一项都可以通过索引被单独访问。每一项都与一个索引号相关联,它是一个整数值,从0开始计数。

>>>print('index0:',tuple1[0],',index1:',tuple1[1],',index2:',tuple1[2],',index3:',tuple1[3],',index4:',tuple1[4])index0: Python ,index1: is ,index2: a ,index3: glue ,index4: language

索引号除了可以是正数,还可以是负数形式,它是从后往前倒着数的,从-1开始。当我们去具体访问一个长元组的最后几项时,负数形式的索引号很有效。

>>> print('index-1:',tuple1[-1],',index-2:',tuple1[-2])index-1: language ,index-2: glue

元组的切片
元组的切片与列表类似

>>> tuple1[::2]('Python', 'a', 'language')>>> tuple1[-1::-2]('language', 'a', 'Python')

操作符可以被用来连接或者复制元组。‘+’可以将两个或者多个元组或元组切片连接在一起。我们可以把两个元组中的值合并得到一个新的元组,‘*’用于复制元组或元组的切片。

>>> tuple1[-1::-2]*2+tuple2*3('language', 'a', 'Python', 'language', 'a', 'Python', 123, 123, 123)

元组的函数

len(tuple1)
计算元组的长度,把元组作为参数传递进去:
max(tuple1)和min(tuple1)
用于找到某一特定元组中的最大值和最小值。

元组和列表的不同之处
元组和列表的首要不同之处就是元组中的值不可修改的。这意味着不能在元组中添加或者删除值,某一数据项的值也不能修改。
我们可以使用list()函数将元组转化为列表。
元组的内置方法:
count():查找元素在tuple中出现的次数。若元组中不存在,则返回零。
index():查找元素的第一个索引值。若元组中不存在,则返回一个错误。
总结
元组是一种有序的数据类型,它不能被修改,因其运行速度比列表快,所以使用元组的代码会有一定的优化。当你和其他人共同合作编写代码时,使用元组类型意味着你不想自己的数据序列被修改。

0 0