tuple
元组和列表的比较
- 列表是有序的,元组也是有序的
- 元素是可以被修改的,元组的元素不能被修改,不能增加或删除
- 一般写元组的时候,在最后加一个",(逗号)"
- 元组也能切片取,有索引
- 可以被for 循环
- 元组也是一个可迭代对象
- 可以进行扩展(extend)
什么时候创建元组?如果你想要创建数据不想被修改的时候,当需要修改的时候把元组转换为列表再修改。
把字符串转换成元组
s = "asdfsdf"
li = ["asdf",123]
tu = (123,123,"asdf")
v = tuple(s)
v1 = tuple(tu)
v2 = list(tu)
print(v,v1,v2)
---
('a', 's', 'd', 'f', 's', 'd', 'f') (123, 123, 'asdf') [123, 123, 'asdf']
用join连接元组,如果里面有数字则不能连接,只能用for循环实现
tu = ("asdf","asdf")
v = "_".join(tu)
print(v)
---
asdf_asdf
extend,对元组或列表进行扩展
li = ["asdf","asdf"]
li.extend([11,22,33])
print(li)
---
['asdf', 'asdf', 11, 22, 33]
# 对元组进行扩展
li = ["asdf","asdf"]
li.extend((11,22,33,))
print(li)
---
['asdf', 'asdf', 11, 22, 33]
对元组中的列表进行修改
元组的一级元素不可修改/删除/增加
tu = (111,"alex",(11,22),[(33,44)],True,33,44,)
tu[3][0] = "wanggang"
print(tu)
---
(111, 'alex', (11, 22), ['wanggang'], True, 33, 44)