基本格式
[表達式 for 變量 in 列表] 或者 [表達式 for 變量 in 列表 if 條件]
例子:將a列表中大於5的數*10儲存到b中
一般操作:
a = [5,10,15,20] b = [] for n in a: if n > 5: b.append(n*10) print(b)
使用推導式可以令代碼簡潔
a = [5,10,15,20] b = [n*10 for n in a if n > 5] #推導式:生成新的列表,將a中大於5的數*10儲存 print(b) #[100,150,200]
一些其他操作:
ls = [-5,2,12,20]#創建列表 #輸出ls中大於0的數 print([x for x in ls if x > 0]) #[2,12,20] #應用函數,求絕對值 print([abs[x] for x in ls]) #[5,2,12,20] #調用函數,轉換大寫 pet = ['Dog','Cat','Fox'] print([newPet.upper() for newPet in pet]) #['DOG','CAT','FOX']
推導式也可以運用到字典,集合中,但是使用時要注意的列表與它們的區別。