Python进阶之路 4.5 元组

    xiaoxiao2022-07-14  145

    4.5 元组

    元组与列表一样,也是一种序列。唯一的不同是元组不能修改,也就是说,元组是只读的。定义元组非常简单,只需要用逗号(,)分隔一些值即可。

    1,2,3,4,5,6,7 #创建一个元组

    当然,也可以将元组用一对括号括起来。

    (1,2,3,4,5,6,7) #创建一个元组

    既然元组中的元素值是用逗号分隔的,那么如何定义只有一个元素的元组呢?当然也是在一个值的后面加逗号了。

    40, #创建一个只有一个元素的元组 (20,) #创建一个只有一个元素的元组 50 #只是一个普通值,不是元组

    如果要创建一个空元组(没有任何元素的元组),可以直接用一对圆括号。

    () #创建一个空元组

    如果想将序列转换为元组,可以使用tuple函数。

    values = tuple([1,2,3,4,5,6,7,8,9]) #将列表[1,2,3,4,5,6,7,8,9]转换为元组(values变量是元组类型)

    [例 4.32] 本例演示了如何创建元组,以及如何生成5个同样值的元组,最后使用tuple函数将列表和字符串转换为元组。

    numbers = 1,2,3,4,5 #创建元组 print(numbers) #输出结果:(1, 2, 3, 4, 5) numes = ('小黑','小白','小红','小黄') print(numes) #输出结果:('小黑', '小白', '小红', '小黄') values = 40, #创建一个只有一个元素的元组 print(values) #输出结果:(40,) #生成5个同样值的元组 print(5 * (16 + 4,)) #输出结果:(20, 20, 20, 20, 20) #不是元组,就是一个运算方法 print(5 * (12 + 4)) #输出结果:80 #将一个序列转换为元组(tuple函数) print(tuple([1,2,3,4,5,6])) #输出结果:(1, 2, 3, 4, 5, 6) print(tuple('adidas')) #输出结果:('a', 'd', 'i', 'd', 'a', 's')

    输出结果:

    (1, 2, 3, 4, 5) ('小黑', '小白', '小红', '小黄') (40,) (20, 20, 20, 20, 20) 80 (1, 2, 3, 4, 5, 6) ('a', 'd', 'i', 'd', 'a', 's')

    Python为什么要加入元组呢?如果要只读的序列,直接用列表不就得了,不修改列表不就是只读了?从技术层面上来说,这么做是可以的。但有如下两个重要原因让我们必须使用元组。 (1)元组可以在映射中作为键值使用,而列表不能这么用。关于映射的内容以后会说到。 (2)很多内奸函数和方法的返回值就是元组,也就是说,如果要使用这些内建的函数和方法的返回值,就必须使用元组才行。

    最新回复(0)