第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何避免“ RuntimeError:字典在迭代期間更改大小”錯(cuò)誤?

如何避免“ RuntimeError:字典在迭代期間更改大小”錯(cuò)誤?

紅糖糍粑 2019-12-09 14:24:56
我檢查了所有其他問(wèn)題,并發(fā)現(xiàn)了相同的錯(cuò)誤,但沒(méi)有找到有用的解決方案= /我有一個(gè)列表字典:d = {'a': [1], 'b': [1, 2], 'c': [], 'd':[]}其中某些值為空。創(chuàng)建這些列表結(jié)束時(shí),我想在返回字典之前刪除這些空列表。當(dāng)前,我正在嘗試執(zhí)行以下操作:for i in d:    if not d[i]:        d.pop(i)但是,這給了我運(yùn)行時(shí)錯(cuò)誤。我知道您無(wú)法在字典中進(jìn)行迭代時(shí)添加/刪除字典中的元素...那么解決這個(gè)問(wèn)題的方法是什么?
查看完整描述

3 回答

?
皈依舞

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超3個(gè)贊

在Python 2.x中,調(diào)用keys會(huì)生成密鑰的副本,您可以在修改時(shí)進(jìn)行迭代dict:


for i in d.keys():

請(qǐng)注意,這在Python 3.x中不起作用,因?yàn)樗黭eys返回迭代器而不是列表。


另一種方法是使用list強(qiáng)制復(fù)制密鑰。這個(gè)也可以在Python 3.x中使用:


for i in list(d):


查看完整回答
反對(duì) 回復(fù) 2019-12-09
?
慕姐4208626

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊

只需使用字典理解將相關(guān)項(xiàng)目復(fù)制到新字典中


>>> d

{'a': [1], 'c': [], 'b': [1, 2], 'd': []}

>>> d = { k : v for k,v in d.iteritems() if v}

>>> d

{'a': [1], 'b': [1, 2]}


查看完整回答
反對(duì) 回復(fù) 2019-12-09
  • 3 回答
  • 0 關(guān)注
  • 514 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)