马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 bozhen 于 2017-7-18 20:58 编辑
元组和列表是近亲关系,在实际使用上是非常相似的。
元组和列表的最大区别是:列表能任意修改其中的元素,任意插入或删除,而元组则不行,一旦定义则不可改变。
>>> tuple1 = (1,2,3,4,5,6,7,8) # 元组创建用一对小括号
>>> tuple1
(1, 2, 3, 4, 5, 6, 7, 8)
>>> tuple1[2] # 访问索引值为2的元素
3
>>> tuple1[5:] # 切片,从索引值为5开始到最后
(6, 7, 8)
>>> tuple1[:5] # 切片,从开头到索引值为5(不包含索引值为5的元素)
(1, 2, 3, 4, 5)
>>> tuple2 = tuple1[:] # 复制切片
>>> tuple2
(1, 2, 3, 4, 5, 6, 7, 8)
>>> tuple1[1] = 3 # 报错,不能修改元组里面元素的值
Traceback (most recent call last):
File "<pyshell#37>", line 1, in <module>
tuple1[1] = 3
TypeError: 'tuple' object does not support item assignment
>>> temp2 = 2 ,3 ,4 # 以,表示是元组类型
>>> type(temp2)
<class 'tuple'>
>>> temp = [] # 创建空列表
>>> type(temp)
<class 'list'>
>>> temp = () #创建空元组
>>> type(temp)
<class 'tuple'>
>>> temp = (1,) # 加逗号,就表示是元组
>>> type(temp)
<class 'tuple'>
>>> temp =(1) # 没加逗号,就表示是int
>>> type(temp)
<class 'int'>
>>> temp = 1, # 不加括号,有逗号,依然成立
>>> type(temp)
<class 'tuple'>
>>> 8 * (8) # (8) 为int8
64
>>> 8 * (8,) # (8,) 为touple , *为重复操作符
(8, 8, 8, 8, 8, 8, 8, 8)
>>> temp = ('小甲鱼','黑夜','迷途','小布丁')
>>> temp = temp[:2] + ('怡静',) + temp[2:] # 在黑夜和迷途之间加上怡静,括号和,必须有
>>> temp
('小甲鱼', '黑夜', '怡静', '迷途', '小布丁')
append() ---> 在最后增加一个元素
extend() --->扩展列表(用另一个列表)
count() --->计算并返回指定元素的数量
remove() --->删除一个元素
pop() --->删除并返回最后一个元素
sort() --->按特定的顺序排序
insert() --->在指定位置插入一个元素
copy() ---> 拷贝一个副本
clear() --->清空所有元素
reserve() --->原地翻转所有的数据
index() --->寻找并返回参数的索引值
通过dir(tuple) 查看只有index() 和 count() 适用于元组。
当我们希望数据不被改变时用元组,需要频繁修改则使用列表
元组相关操作符: 拼接(+) 、重复(*)、 in & not in、> >= < <= == != 、not and or
|