我有一个字典,我想重命名的字典键,其中一些是小写骆驼大小写,但我想保持序列。有没有办法保持诚信?你知道吗
我写了一个清洁剂,将帮助与同样的,它看起来像这样
def key_cleanser(data):
name_cleanse_dict = {
'id': 'ID',
'emailid': 'emailId',
'firstname': 'firstName',
'middlename': 'middleName',
'lastname': 'lastName',
'addressline1': 'addressLine1',
'addressline2': 'addressLine2',
'addressline3': 'addressLine3',
'postalcode': 'postalCode',
}
if isinstance(data, dict):
dictionary = data.copy()
dict_keys = list(dictionary.keys())
for key in dict_keys:
if key in name_cleanse_dict.keys():
dictionary[name_cleanse_dict[key]] = dictionary.pop(key)
key = name_cleanse_dict[key]
return dictionary
return data
假设我的字典是这样的
person_data = {
'id': 5,
'firstname': 'Bob',
'lastname': 'Woolmer',
'gender': 'Male',
'country': 'USA'
'emailid': 'abs@gmail.com'
}
我得到以下输出:
{
'gender': 'Male',
'country': 'USA',
'ID': 5,
'firstName': 'Bob',
'lastName': 'Woolmer',
'emailId': 'abs@gmail.com'
}
我想要的输出是:
{
'ID': 5,
'firstName': 'Bob',
'lastName': 'Woolmer',
'gender': 'Male',
'country': 'USA',
'emailId': 'abs@gmail.com'
}
有没有一种方法来维护一个序列,以防我复制这个动态字典。你知道吗
您可以使用具有默认值的dict理解和dictionary
get
方法。你知道吗Python3.6+保证了顺序,否则应该使用
OrderedDict
保存原始密钥:
修改关键点。按原始顺序重新生成词典:
此解决方案仅适用于Python3.6+。你知道吗
如果您可以将原始词典更改为OrderedDicts,则类似的操作将起作用:
输出:
相关问题 更多 >
编程相关推荐