考虑以下问题,我有一个 OrderedDict,只想更改键的名称。我们可以使用以下命令逐行执行:
od[new_key] = od.pop(old_key)
但是,如果我尝试循环执行,我会得到一个 RuntimeError: OrderedDict mutated during iteration
这是重现问题的简短示例:
from collections import OrderedDict
od = OrderedDict()
od['a'] = 1
od['b'] = 2
od['c'] = 3
od['d'] = 4
for key in od.keys():
od[key+"_"] = od.pop(key)
你将如何解决问题?