1.前言
元组这节很容易理解,你有了上一节列表的知识,一看就懂。元组和列表一样,也是一种序列。唯一不同的是元组不能修改。创建元组的语法很简单:如果你用逗号分割了一些值,那么你就自动创建了元组。
2.元组:不可变的序列
我们直接来看一些简单的例子:
>>> (1,2,3,4,5,6,7) #初始化一个有元素的元组
(1, 2, 3, 4, 5, 6, 7)
>>> () #空元组
()
>>> (1,) #创建一个只有一个元素的元组
(1,)
>>> 3*(40+2)
126
>>> 3*(40+2,) #注意看这两个例子的差别,在于一个逗号。逗号是必须有的,这是区别于其它类型的重要标志。
(42, 42, 42)
tuple函数
tuple函数的功能于list函数基本上是一样的:以一个序列作为参数并把它转换为元组,如果参数就是元组,那么该参数就会被原样返回。
>>> tuple([1,2,3]) (1, 2, 3) >>> tuple('abc') ('a', 'b', 'c') >>> tuple((1,2.3)) (1, 2.3)
基本元组操作
元组其实并不复杂,除了创建元组和访问元组元素之外,也没有太多其他操作,可以参照其他类型的序列来实现。
>>> x=1,2,3 >>> x[1] 2 >>> x[0:2] (1, 2)元组的分片还是元组,就像列表的分片还是列表一样,是不是很简单嘞。
3.元组的意义
你可能会想,我们用列表就好了,为什么要用元组这个类型嘞,什么地方会用到?谁会去用它?
- 元组可以在映射中当做键使用--而列表则不行
- 元组作为很多内建函数和方法的返回值值存在,也就是说你必须对元组进行处理。只要不尝试修改元组,那么,“处理”元组在绝大多数情况下就是把它当做列表来操作的。
好了,元组这部分很简单,会这些基本上就是ok的,下一章节是我们的重点章节--字典,提前预告咯。