【发布时间】:2020-10-25 06:16:29
【问题描述】:
嗯,我有一本字典,用于存储从 PDF 文件中提取的信息。 像这样:
{ 'B) NAME:': 'Jair', 'H) AGE: ': '25', 'J) Gender': '男性'}
我正在尝试通过使用以下代码排除来自 PDF 的字符串“b)”、“h)”、“j)”来“清理”该字典:
for k in mydict:
mydict[(k.split(')')[1])] = mydict.pop(k)
但此代码不起作用:“IndexError: list index out of range”
我不知道为什么,因为当我用 print 而不是 pop 运行代码时,一切都很顺利:
for k in mydict:
print(k.split(')')[1])
我应该改变什么?
【问题讨论】:
-
您的第一个代码 sn-p 运行良好,我没有收到该错误
-
cito.github.io/blog/never-iterate-a-changing-dict 。你最终会得到不可预测的结果。
标签: python dictionary