1. 程式人生 > >字典報錯RuntimeError: dictionary changed size during iteration

字典報錯RuntimeError: dictionary changed size during iteration

第一種寫法如下圖

報錯原因:for迴圈的迴圈長短,是靠key的個數來計算的,用pop刪除了一個key,導致for迴圈的長度一直在變。

第二種,與第一種的區別在於 break

原因:加上break,執行pop之後跳出當前迴圈,不會繼續執行for迴圈,所以就不會報錯

第三種

dict_1={"aa":"123","bb":"456","cc":"789"} dict_1.pop('aa') print('刪除aa後的dict為:',dict_1)

總結:直接簡單,不冗餘

第四種:第三種的完善版:

dict_1={"aa":"123","bb":"456","cc":"789"} try:     dict_1.pop('ee') except Exception as e:     print(e) print('刪除aa後的dict為:',dict_1)