d={"given_age":"30","given_weight":"160","given_height":6}
想要从每个密钥中移除"given_"
,
for key,value in d.items():
new_key=re.sub(r'given_','',key)
if new_key!=key:
d[new_key]=d.pop(key)
下面出错了,我只是想换个键,为什么它会抱怨呢?
RuntimeError: dictionary keys changed during iteration
2条答案
按热度按时间uqjltbpv1#
在迭代集合时,最好不要修改集合。在此使用dict解析。
bakd9h0s2#
您还可以将
str.replace()
与dict综合一起使用按照@CrazyChucky的建议编辑