元组
我们知道,用方括号括起来的是列表,那么用圆括号括起来的是什么,是元组。
元组也是序列结构,但是是一种不可变序列,你可以简单的理解为内容不可变的列表。除了在内部元素不可修改的区别外,元组和列表的用法差不多。
元组与列表相同的操作:
- 使用方括号加下标访问元素
- 切片(形成新元组对象)
- count()/index()
- len()/max()/min()/tuple()
元组中不允许的操作,确切的说是元组没有的功能
- 修改、新增元素
- 删除某个元素(但可以删除整个元组)
- 所有会对元组内部元素发生修改动作的方法。例如,元组没有remove,append,pop等方法
看一些实例:
tup1 = () #创建空元组
tup1 = (40,) #创建只包含一个元素的元组时,要在元素的后面跟个逗号
tup = (1,2,3,4)
tup[2]
3
tup[3] = "a"
Traceback(most recent call last):
File "<pyshell#2>",line 1, in <module>
tup[3] = "a"
TypeError:'tuple' object does not suppor item assignment
元组与列表类似的特殊操作
元组只保证它的一级子元素不可变,对于嵌套的元素内部,不保证不可变!
tup = ('a','b',['A','B'])
tup[2][0] = 'a'
tup[2][1] = 'b'
tup
('a','b',['a','b'])
列表和元组的转换
使用list函数可以把元组转换成列表
使用tuple函数可以把列表转换成元组