如何更改字典列表字典键? [重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何更改字典列表字典键? [重复]相关的知识,希望对你有一定的参考价值。

这个问题已经在这里有一个答案:

鉴于字典名单如下:

[
     {'Label': 'Acura', 'Value': '1'}, 
     {'Label': 'Agrale', 'Value': '2'}
]

我如何可以替换“制作”与“代码”价值'这个词“标签”?

I'm新的Python和尝试没有成功许多不同的方法。

答案

使用.pop

lst = [{'Label': 'Acura', 'Value': '1'}, {'Label': 'Agrale', 'Value': '2'}]

for d in lst:
    d['Make'] = d.pop('Label')
    d['Code'] = d.pop('Value')

print(lst)

这产生

[{'Make': 'Acura', 'Code': '1'}, {'Make': 'Agrale', 'Code': '2'}]

如果密钥恰好不存在。你可以定义一个默认密钥,以及:

d['new_key'] = d.pop('missing_key', 'default_value')
另一答案

最简单的方法是添加与旧值一个新的密钥,然后删除旧的密钥:

mydict['Make'] = mydict['Label']
del mydict['Label']
另一答案

你为什么不只是想映射MakeCode,e.g字典:

d = {e['Label']: e['Value'] for e in your_list}
另一答案

使用熊猫

import pandas as pd
df=pd.DataFrame([{'Label': 'Acura', 'Value': '1'}, {'Label': 'Agrale', 'Value': '2'}])
df=df.rename(index=str, columns={"Label": "Make", "Value": "Code"})
df.to_dict('records')

以上是关于如何更改字典列表字典键? [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python:创建后冻结字典键[重复]

如何在Python中找到字典中的最大值键[重复]

如何迭代更新字典的值并将每个表示添加到列表中[重复]

使用列表中的项目更改嵌套字典的字典中的值?

字典列表键的Python总和[重复]

如何从字典中检查特定字符串的键[重复]