我們經常需要這樣處理一個列表:把一個列表里面的每個元素, 經過相同的處理 ,生成另一個列表。
比如:一個列表1,里面都是數字,我們需要生成一個新的列表B,依次存放列表A中每個元素的平方
怎么辦?
當然可以用for循環處理,像這樣
list1 = [1,2,3,4,5,6]
list2 = []
for num in list1:
list2.append(num*num)
Python還有更方便的語法,可以這樣寫
'''
學習中遇到問題沒人解答?小編創建了一個Python學習交流群:531509025
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
list1 = [1,2,3,4,5,6]
list2 = [num**2 for num in list1]
這種寫法,通常叫做 列表推導式 。
就是把一個列表里面的每個元素經過簡單的處理生成另一個列表的操作。
其中 for 前面的部分,就是要對取出的元素進行的處理操作, 上面的例子是計算平方。
如果我們 得到的 list1 里面每個元素的 立方呢?
對了,就可以這樣
list1 = [1,2,3,4,5,6]
list2 = [num**3 for num in list1]