當前位置:成語大全網 - 書法字典 - Python中列表生成器和生成器的區別

Python中列表生成器和生成器的區別

列表生成語法:

【x * x for x in range(0,10)】//列出生成公式,這裏有括號。

//Results【0,1,4,9,16,25,36,49,64,81】

(x * x for x in range(0,10))//生成器,這裏是括號。

//結果

兩者之間的區別是顯而易見的:

壹個直接返回表達式的結果列表,另壹個是對象,其中包含對表達式結果的計算引用,可以通過循環直接輸出。

g =(x * x表示範圍內的x(0,10))

對於g中的n:

印刷

結果

1

16

25

36

四十九個

64

81

當表達式的結果數量較少時,最好使用列表生成。壹旦數量級過大,列表生成將占用大量內存。

生成器不會立即將結果寫入內存,但這是壹種保存的計算方法。通過不斷的采集,可以得到相應位置的值,所以占用的內存只是計算對象的存儲。