gpt4 book ai didi

python - 用另一个字典中的值替换字典键

转载 作者:太空宇宙 更新时间:2023-11-04 08:33:46 25 4
gpt4 key购买 nike

我有一个字典列表,其中包含我想在每个字典的键下替换的信息。

所以,我正在考虑遍历每个字典并替换值。

我有另一个字典,其中包含我想替换为键的值和应该作为值的最终值。

它是这样的:

listOfDicts = [{'value_1' : 'A', 'value-2' : 'B', 'valu&_3' : 'C'}, {'value-1' : 'D', 'value_2' : 'E', 'value-3' : 'F'}, {'value_1' : 'G', 'value_2' : 'H', 'value_3' : 'I'}]

然后我有另一本字典用作修复此信息的基础:

fixer = {'value-2' : 'value_2', 'value&_3' : 'value_3', 'value-3' : 'value_3', ...}

我该如何进行替换?

-编辑:

期望的输出应该是这样的:

listOfDicts = [{
'value_1' : 'A',
'value_2' : 'B',
'value_3' : 'C'},
{'value_1' : 'D',
'value_2' : 'E',
'value_3' : 'F'},
...}

最佳答案

我们可以用一个函数修复每一个字典:

fixer = {'value-2' : 'value_2', 'value&_3' : 'value_3', 'value-3' : 'value_3'}

def fix_dictionary(dict_):
return { fixer.get(k, k): v for k, v in dict_.items() }

这将为给定的 dict_ 构造一个新字典,其中 fixer 中的键将被“固定”(替换为 中的相应值fixer 字典)。

然后我们可以生成一个新的固定字典列表:

[fix_dictionary(dict_) for dict_ in listOfDicts]

或者我们可以删除该函数,并使用一个一个 衬里:

[{ fixer.get(k, k): v for k, v in dict_.items() } for dict_ in listOfDicts]

关于python - 用另一个字典中的值替换字典键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50847329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com