python的一般for迴圈:for i in x:#x是列表物件
而列表推導式是:[i for i in x]
其意為:用for i in x的所有遍歷結果i來組成乙個新的列表
[ i * i for i in x]:其中[ ]代表建立乙個新的列表來盛放所有遍歷結果
[ i * i for i in x]:其中 i * i表示:產生乙個遍歷結果i * i,並將這個遍歷結果放在空的結果列表裡
這個推導式的所有含義就是:每次for迴圈,產生乙個遍歷結果i * i,並將所有遍歷結果放在新列表裡
比如:
x=[1
,2,3
,4,5
]print
([i*i for i in x]
)結果如下:[1
,4,9
,16,25
]如果推導式不加:
print
(i*i for i in x)
結果為:
at 0x0000018686fcb740
>
意為:生成器物件 在記憶體的位置 0x.
..
1.可以快速將乙個列表整數化,因為input輸入的值皆為字串,所以如果輸入整數列表,在使用之前還需要再次整數化,這就可以直接使用列表推導式:
x=[ int(i) for i in x ] :直接用由 int(i)組成的新列表初始化原列表x
2.列表推導式裡面也可以巢狀迴圈,不過難以理解,這就不放出來了
python列表推導式詳解
1 概念 輕量級迴圈建立列表 01 需求 建立乙個列表100個元素 1 100 my list for i in range 1,101 my list i for i in range 1,101 print my list 02 需求 建立乙個列表 10個元素,中國 my list for in...
列表推導式
1.先判斷再賦值 a 5 b 6 c a b print c false 列表組合 list1 1,2,3 list2 4,5,6 list3 list1 list2 print list3 一行 方括號中是對字串的切片 後邊有個or 為從左到右,取第乙個為真的值,如果or左側為非空字串,就是用or...
列表推導式
0 9的平方,輸出為列表 list1 x 2 for x in range 10 range 10 是0 9 print list1 結果為 0,1,4,9,16,25,36,49,64,81 使用for迴圈完成 0 9的平方,輸出為列表 list1 for i in range 10 print ...