python資料儲存之列表:一些注意的地方
1.常用列表的列表推導式
a = [i for i in range(n)] # 會生成關於i的一個列表,其中可以對i進行判斷篩選,或者進行其他操作
在列表資料清洗可以使用列表推導式,例如簡單的一個列表元素資料的清洗操作
a = [1,2,3,4] # 對列表a中的資料進行操作
a = [ i**2 for i in a] # a = [1,4,9,16]
2.列表的切割操作注意的一些方法
首先,列表是具有反向索引 從-1開始,
a = [1,2,3] a[-2] = 2 a[-1] = 3
在進行切割操作時,若只是獲取列表部分中間的元素,可以使用反向索引,例如:
a = [1,2,3,4,....'a','b','c'] # 需求:擷取首尾元素(這些資料不需要入庫)
a[1:-1] # 直接去除首尾元素
3.列表的反向切割:
會從開始索引往左進行切割.
a = [1,2,3,4] # 進行反向切割
a[0::-1] # [1] (從0索引往左切割,只有一個索引0元素為1)
a[2::-1] # [3,2,1] (從索引2(值為3)往左切,以此滿足條件的下標對應的元素值為 3,2,1)
a[-1::-1] # [4,3,2,1] 反轉列表,相當於reverse()方法[注意:reverse()返回值是反轉後的a,而a[-1::-1]返回值是一個新列表,可以使用一個變數進行接收]
4.列表的合併
兩個列表可以直接相加,進行合併
相加時哪個列表在前,那個列表的所有元素就在前
若是兩個列表有重複元素,相加後需要保留一個即可:可以使用set()轉為集合,然後在list()轉為列表
set(),list()函式引數傳入需要進行轉化的資料,使用變數接收返回值
也可以使用雙重遍歷列表進行資料去重
5.列表的遍歷,enumerate方法的使用
enumerate()方法,在遍歷時使用,傳入列表,遍歷的結果是每個元組(索引,對應值)
for i in enumerate(list(range(1,5))):
print(i) # (0,1),(1,2)....
可以使用兩個變數解包元組
for m,n in enumerate(list(range(1,5))):
5.列表的一些其他的方法
index()傳入一個元素值,可以獲得在列表中的索引值
pop()傳入一個索引,刪除列表中的元素,返回值是被刪除的元素[可以對列表中的資料進行不可逆的取出操作]
remove()傳入一個元素值,直接刪除元素,返回值為None