這四個都是python中的序列,用於存放數據,他們區別總結如下:
列表list
|
元組tuple
|
字典dictionary
|
集合set
|
|
是否可變
|
可變
|
不可變
|
可變
|
可變
|
是否有序
|
有序
|
有序
|
無序
|
無序
|
元素是否重復
|
可重復
|
可重復
|
鍵不可重復
|
不可重復
|
定義符號
|
[]
|
()
|
{key:value}
|
{}
|
創建
|
1.[]直接創建
2.list()
3.列表生成式
|
1.()直接創建
2.tuple()
|
1.{}直接創建
2.dict(key1=value1)
3.dict(zip(list1,list2))
|
1.{}直接創建
2.set()
|
刪除
|
1.del刪除元素或者列表
2.list.remove(value)
3.list.pop()
|
1.del刪除元素或元組
|
1.del刪除元素或字典
2.
|
1.del刪除元素或集合
2.set.remove()
3.set.pop()
4.set.clear()
|
修改插入
|
1.append()
2.insert()
3.+
4.extend()
|
不可修改
|
1.dict[key]=value
|
s.add()
|
訪問,遍歷
|
1.索引訪問
2.for循環遍歷
for i in list
for index,i in enumerate(list)
|
1.索引訪問
2.for循環遍歷
|
1.鍵訪問
2.get()訪問
3.for key,value in dict.items()
for key in dict.keys()
for value in dict.values()
|
for循環遍歷
|
生成式
|
[i*i for i in list1]返回列表
|
(i*i for i in list1)返回生成器對象,通過for和next()訪問
|
dict={i:j for i,j in zip(list1,list2)}
dict={i*2:2 for i in range(1,10)}
|
交集&,並集|,差集-
|
切片
|
支持切片
|
支持切片
|
不支持切片
|
不支持切片
|
索引
|
支持索引
|
支持索引
|
不支持索引
|
不支持索引
|
+,*
|
支持
|
支持
|
不支持
|
不支持
|
其他
|
不能作為字典的鍵
|
可以作為字典的鍵
|