|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
013 元组tuple:戴上了枷锁的列表
元组和列表(任意删除/插入元素,很灵活)是相似的,但是一种不可改变的模式。
创建,访问元组,大部分是小括号:
- >>> tuple1 = (1, 2, 3, 4, 5)
- >>> tuple1[:3]
- (1, 2, 3)
复制代码
(成为tuple:逗号是关键,小括号不是关键)
若只有一个元素:tuple1 = (1, )
eg:
- >>> 8*(8)
- 64
- >>> 8*(8,)
- (8, 8, 8, 8, 8, 8, 8, 8)
复制代码
在tuple中插入新的元素的元组(拼接操作符):
- >>> temp = ('A', 'B', 'C')
- >>> temp = temp[:1]+ ('B2',) + temp[1:]
- >>> temp
- ('A', 'B2', 'B', 'C')
- >>> del temp
复制代码
当元素没有任何标签指向他的时候,内存会被释放。
列表中的in / not in / and / or 等都可以用在tuple中。
课后:
0. 列表:开放的大仓库;元组:封闭的大仓库;
1. 列表:频繁地修改数据时;元组:不希望内容被轻易修改的时候;
2. 列表更灵活;
元组仅有两项功能可用
3.
- >>> x, y, z = 1, 2, 3
- >>> type(x)
- <class 'int'>
- >>> h = x, y, z
- >>> type(h)
- <class 'tuple'>
复制代码
4. 是否有元组推导式? 答案是没有,那为何下式没有报错?
- >>> tuple1 = (x**2 for x in range(10))
- >>> tuple1
复制代码
因为一不小心拿到了一个生成器:
- >>> type(tuple1)
- <class 'generator'>
- >>> tuple1.__next__()
- 0
- >>> tuple1.__next__()
- 1
- >>> tuple1.__next__()
- 4
复制代码
|
评分
-
查看全部评分
|