国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

python - 用生成器迭代數(shù)據(jù)在文件和IDLE中運(yùn)行結(jié)果不一致,

瀏覽:112日期:2022-06-30 18:38:38

問題描述

使用生成器迭代數(shù)據(jù)構(gòu)造丟失問題,同樣的代碼運(yùn)行結(jié)果不一致:

文件方式運(yùn)行得到結(jié)果為:5 2 1 0

Python自帶IDLE運(yùn)行得到結(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)

python - 用生成器迭代數(shù)據(jù)在文件和IDLE中運(yùn)行結(jié)果不一致,

問題解答

回答1:

不要對正在遍歷的對象進(jìn)行修改, 那樣會導(dǎo)致索引混亂, 無法達(dá)到我們想要的結(jié)果, 可以通過enumerate查看遍歷過程中, 索引的變化

for index, n in enumerate(c): # index 為取到的索引值 print(index, n) if n == 5:c.send(3)

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 甘孜县| 阿合奇县| 三台县| 调兵山市| 侯马市| 庆阳市| 余姚市| 桐梓县| 镇原县| 榆林市| 峨山| 湘潭县| 随州市| 高平市| 高清| 厦门市| 雷州市| 馆陶县| 剑川县| 沽源县| 伊川县| 康乐县| 湖北省| 广元市| 和政县| 左云县| 新宾| 台北县| 呼和浩特市| 汶上县| 赞皇县| 那坡县| 禄劝| 阳泉市| 甘孜| 郁南县| 马龙县| 蓬安县| 沙田区| 新源县| 正宁县|