私の辞書c
のキーを新しいキーk_new
で更新したいと思います。私はthisのような異なるスタックオーバーフローの問題を参照していますが、更新されません。私が間違っている場所を教えてください。Pythonのループで辞書キーを更新する
from nltk.stem import WordNetLemmatizer
lemmatizer = WordNetLemmatizer()
c = {'apples': 3, 'biscuits and tea': 3, 'oranges and onions': 4}
for k in c:
splits=k.split()
k_new= " ".join(lemmatizer.lemmatize(w.lower()) for w in splits)
c[k_new] = c.pop(k)
print(c)
PS:私も使用:
c[k_new] = c[k]
del c[k]
それから私はRuntimeError: dictionary changed size during iteration
を取得し、あなたがそれを反復しながら、あなたは辞書を更新してくれ
お取置きは...辞書を更新しない... –
関連:https://stackoverflow.com/questions/ 1207406/remove-items-while-iteratingのリスト –