办公设备维修网
资讯中心 您所在的位置:网站首页 资讯中心 python里对字典的key值进行修改的方法

python里对字典的key值进行修改的方法

2024-04-02 11:45:58| 来源: 网络整理

参考了如下网站的方法,自己简单改写了对应函数。

https://stackoverflow.com/questions/21201661/key-must-not-contain-error-in-pymongo

修改字典的key,最好的方式就是新增一个key-value,value为之前的值;之后再把原先的key-value删掉。

=========================

我以之前的一个应用为例,把一个字典key是汉字的替换成对应的英文单词。

#-*- coding:utf-8 -*-def ConvertToENG(org_dict, translate_dict): """ 对原始字典中的key是汉字做替换成英文 :param org_dict: 原始字典 :param translate_dict: 保存有key是汉字,value是英文的汉英字典 :return: 修改原始字典,key是汉字替换为英文,value不变,并返回修改后的org_dict """ if isinstance(org_dict, (list, tuple)): # 如果是嵌套的字典,有可能其value是列表或者元组 list2 = list() for e in org_dict:     # 递归去找key list2.append(ConvertToENG(e, translate_dict)) return list2 # 修改字典的key,最好的方式就是新增一个key - value 键值对,value为之前的值;之后再把原先的key - value键值对删掉 if isinstance(org_dict, dict): for key, value in org_dict.items():     # 原始字典的key是汉字能匹配上 value = ConvertToENG(value, translate_dict) # 保留原key old_key = key if translate_dict.has_key(key): # 原始字典的key是汉字能匹配上 # 替换key key = translate_dict[key] # 赋value值 org_dict[key] = value # 删掉旧key-value del org_dict[old_key] # end for return org_dict # end if return org_dict

 

 

 

 

 

 

 



【本文地址】 转载请注明 

最新文章

推荐文章

CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备16040606号-1