[ __ for __ in ____ ]
舉例來說:
>>>list1 = [num for num in range(0,6)]
就可以創建出 [0, 1, 2, 3, 4]的list
後面還可以加入更複雜的條件式,如:
>>>list2 = [num for num in range(0,10) if num%2 == 0]
就可以創建出 [0, 2, 4, 6, 8]的list
當然還有不少有趣的例子,附在下方:
要注意的是其中最後一個例子運用在string上。
最後,python也允許有複雜的巢式(nested)的函式呼叫,例如:
2018/3/28 補充
此外,Dictionary Comprehensive與List Comprehensive非常類似,通式如下:
{ __:__ for __ in ____ }
例如:
第一個例子中,因預設(default)就是iterate鍵值(key),所以只看到keys。
而在第二個例子中,key及value都用到了,所以要注意最後in的後面必須改成.items,表示要iterate的整個item。
更多創建出dictionary的例子:
沒有留言:
張貼留言