運用列表生成式,可以快速生成list,可以通過一個list推導出另一個list,而代碼卻十分簡潔。
格式
[x for x in 內容]
[x for x in 內容 if 條件]
1:要把生成的元素x放到前面,執行的時候,先執行后面的for循環
2:后面跟上for循環 可以有多個for循環,也可以在for循環后面加個if條件
3:for循環后面可以是任何方式的迭代器(元組,列表,生成器。。)只要可以迭代的對象中有一個值。
1:單循環列表生成式
字符串生成列表
print([x for x in 'abcd'])#['a', 'b', 'c', 'd']
列表生成列表
print([x for x in range(10)] )#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
列表生成列表 if條件
print([x for x in range(10) if x > 5] )#[6, 7, 8, 9]
2:雙循環列表生成式
print( [m + n for m in 'ABC' for n in 'XYZ'])#['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
參看文檔:列表生成式--廖老師博客