可能會理解迭代器(生成器)與可迭代對象(常用的:字符串、列表、字典...)的性能問題了吧

生成器:我實現(xiàn)了這樣一個功能你試試

def count(n):
    while True:
        yield n
        n += 1
        
c = count(0)

列表: 這個簡單。


def count(n):
    haha = []
    while True:
        haha.append(n)
        n += 1
    return haha

c = count(0)

都準備好了,點火 開炮

完成后我們來取一下90~100的元素

  • 生成器:ok啦
print(c[90:100])
# 輸出
TypeError: 'generator' object is not subscriptable
    
# 正確姿勢
import itertools
for i in itertools.islice(c, 90, 100):
    print(i)
    
# 輸出
90
91
92
93
94
95
96
97
98
99

  • 列表

蛋定,慢~來
靠,死機了

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容