python List 相關操作
1、建立空列表
a = [ [ ] for i in range(5)]
b = [ [ ] ] * 5
a中的五個空列表,分別指向不同的物件;
b中的五個空列表,指向同一個物件;
2、列表的複製
a = [1,2,3,4,5]
b = a
a和b指向了同一個物件,改變a(或b),b(或a)也跟著改變
列表深拷貝的3中方法:
a = [1,2,3,4,5]
b = list(a)
呼叫copy模組
用列表的切片實現列表複製
3、all() 和 any()
all -----True if every value is True
any -----True if at least 1 value is True
not all -----True if at least 1 value is False
not any-----True if every value is False
4、itertools模組的使用
a = [0,1,2]
b = [3,4]
for i in a+b:
print(i)
使用" + "會複製列表,生成新的列表,當列表非常大的時候,操作不可行
可以使用itertools模組
5、zip()函式和zip分解
a = [0,1,2]
b = [3,4,5]
c = [6,7,8]
d = zip(a,b,c)
e,f,g = zip(*d)
6、列表操作" + " 和extend的區別
+ : 產生一個新的列表,不改變原列表
extend:追加列表,不產生新列表,改變原列表,extend的引數必須是可迭代的
7、轉換矩陣
a = [[0,1,2], [3,4,5], [6,7,8]]
b = zip(*a)
8、列表的count方法
a = [1,2,3,1]
print(a.count(1)) #2
9、列表排序
a = [3,2,1]
①:a.sort()
改變原列表,即a = [1,2,3]
②:b = sorted(a)
複製一個新的列表,不改變原列表
sorted關鍵字排序
10、列表中插入一個或者多個元素
11、從列表中刪除元素
del、pop
12、反轉一個列表
a = [1,3,2]
①:a.reverse()
改變原列表
②:reversed(a)
不改變原列表
13、列表元素去重
① a = [1,2,3,1,2]
b = list(set(a))
不保證原列表的元素順序