文章詳情頁
python - 用生成器迭代數(shù)據(jù)在文件和IDLE中運行結(jié)果不一致,
瀏覽:167日期:2022-06-30 18:38:38
問題描述
使用生成器迭代數(shù)據(jù)構(gòu)造丟失問題,同樣的代碼運行結(jié)果不一致:
文件方式運行得到結(jié)果為:5 2 1 0
Python自帶IDLE運行得到結(jié)果為:5 3 2 1 0
def countdown(n): while n >= 0:newvalue = (yield n)if newvalue is not None: n = newvalueelse: n -= 1c = countdown(5)for n in c: print(n) if n == 5:c.send(3)

問題解答
回答1:不要對正在遍歷的對象進(jìn)行修改, 那樣會導(dǎo)致索引混亂, 無法達(dá)到我們想要的結(jié)果, 可以通過enumerate查看遍歷過程中, 索引的變化
for index, n in enumerate(c): # index 為取到的索引值 print(index, n) if n == 5:c.send(3)
上一條:python - 使用requests爬取[大街網(wǎng)]職位信息,嘗試多次失敗,幫忙看看我的代碼有什么問題?應(yīng)該怎么改呢?下一條:各位python爬蟲大牛看過來,這個網(wǎng)站的反爬蟲怎么處理
相關(guān)文章:
1. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””2. docker - 各位電腦上有多少個容器啊?容器一多,自己都搞混了,咋辦呢?3. nignx - docker內(nèi)nginx 80端口被占用4. docker容器呢SSH為什么連不通呢?5. mac里的docker如何命令行開啟呢?6. 關(guān)于docker下的nginx壓力測試7. 如何解決Centos下Docker服務(wù)啟動無響應(yīng),且輸入docker命令無響應(yīng)?8. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????9. docker start -a dockername 老是卡住,什么情況?10. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。
排行榜

熱門標(biāo)簽
網(wǎng)公網(wǎng)安備