1. 程式人生 > >‘列表生成式 ’List Comprehensions和‘生成器’generator的區別

‘列表生成式 ’List Comprehensions和‘生成器’generator的區別

生成式 com class for ber range ner 很多 word

要創建一個generator,有很多種方法。第一種方法很簡單,只要把一個列表生成式的[]改成(),就創建了一個generator:

>>> L = [x * x for x in range(10)]
>>> L
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
>>> g = (x * x for x in range(10))
>>> g
<generator object <genexpr> at 0x1022ef630>

創建Lg的區別僅在於最外層的[]()L是一個list,而g

是一個generator。

‘列表生成式 ’List Comprehensions和‘生成器’generator的區別