我有一本包含20 000多个条目的字典,目前只有单词和源文本中使用该单词的次数(Dante的意大利神曲).
我想通过所有条目来处理所有使用实际定义替换值的条目.是否有一种简单的方法来迭代关键字,这些关键字具有作为值的数字以便替换(当我研究其含义时)?
字典开始:
{'corse': 378, 'cielo,': 209, 'mute;': 16, 'torre,': 11, 'corsa': 53, 'assessin': 21, 'corso': 417, 'Tolomea': 21} # etc.
一种应用程序的排序,它将建议用于研究和定义的关键字.
解决方法:
这是一个能找到你的钥匙并取代你的价值的功能.
current_dict = {'corse': 378, 'cielo': 209, 'mute': 16}
print(current_dict)
def replace_value_with_definition(key_to_find, definition):
for key in current_dict.keys():
if key == key_to_find:
current_dict[key] = definition
replace_value_with_definition('corse', 'Definition of "corse"')
print(current_dict)
输出是:
{'corse': 378, 'cielo': 209, 'mute': 16}
{'corse': 'Definition of "corse"', 'cielo': 209, 'mute': 16}
如果你发现循环你的字典花了太长时间,试试一个生成器函数:
def gen_replace_value_with_definition(key_to_find, definition):
for key in current_dict.keys():
if key == key_to_find:
current_dict[key] = definition
yield True
yield False
found = False
while not found:
found = next(gen_replace_value_with_definition('corse', 'Definition of "corse" via generator'))
print(current_dict)
输出:
{'corse': 'Definition of "corse" via generator', 'cielo': 209, 'mute': 16}
标签:python,python-3-x,dictionary
来源: https://codeday.me/bug/20190930/1834760.html