2 回答

TA貢獻(xiàn)1848條經(jīng)驗 獲得超6個贊
生成器的大小不受列表大小的影響。
from sys import getsizeof
short_list = [i for i in range(10)]
long_list = [i for i in range(100)]
print(getsizeof(short_list))? # prints '92'
print(getsizeof(long_list))? # prints '452'
gen_short_list = (i for i in short_list)
gen_long_list = (i for i in long_list)
print(getsizeof(gen_short_list))? # prints '56'
print(getsizeof(gen_long_list))? # prints '56'
除此之外,返回對象的大小并不重要。那么,我們開始吧。

TA貢獻(xiàn)1831條經(jīng)驗 獲得超9個贊
檢查生成器文檔。這是一種動態(tài)生產(chǎn)物品的模式。在Python中使用關(guān)鍵字yield
andyield from
可以很好地處理無限數(shù)據(jù)結(jié)構(gòu),特別是因為生成器的構(gòu)造。
添加回答
舉報