You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python字典键修改问题:如何更改字典键并保留对应数据

修改Python字典键名的实用方法

嘿,针对你在开发类数据库系统时遇到的字典键名修改需求,我给你几个适配Python 3.7.0b4版本的实用方案,能轻松把name键改成你想要的名称,同时完全保留它关联的嵌套数据:

你的原始字典是:

{'lastExecution': '1-1-1970', 'wachtwoord': 'wachtwoord', 'name': {'laatsteUpdate': '1-1-1970', 'puntenAantal': '0'}}

方法一:直接赋值+删除旧键(最简单)

这是最直观的方式,先把新键指向旧键的对应值,再删掉旧键:

# 先定义你的字典
my_dict = {'lastExecution': '1-1-1970', 'wachtwoord': 'wachtwoord', 'name': {'laatsteUpdate': '1-1-1970', 'puntenAantal': '0'}}

# 把新键(比如'user_name')赋值为旧键'name'的值
my_dict['user_name'] = my_dict['name']

# 删除旧键'name'
del my_dict['name']

注意:这种方法会把新键添加到字典的末尾,不过Python 3.7+已经支持字典的插入顺序保留,如果你对键的位置没有要求,这个方法最省事。

方法二:遍历构建新字典(保持原键顺序)

如果需要严格保留原来的键顺序,你可以遍历原字典的键值对,构建一个新字典:

my_dict = {'lastExecution': '1-1-1970', 'wachtwoord': 'wachtwoord', 'name': {'laatsteUpdate': '1-1-1970', 'puntenAantal': '0'}}
new_dict = {}

for key, value in my_dict.items():
    # 遇到'name'键时替换成新名称,其他键保持不变
    if key == 'name':
        new_dict['user_name'] = value
    else:
        new_dict[key] = value

# 把新字典赋值给原变量
my_dict = new_dict

这样新字典的键顺序和原字典完全一致,只是把name换成了你想要的名称。

方法三:字典推导式(简洁版)

用字典推导式可以把上面的遍历逻辑压缩成一行代码,同样能保留原顺序:

my_dict = {'lastExecution': '1-1-1970', 'wachtwoord': 'wachtwoord', 'name': {'laatsteUpdate': '1-1-1970', 'puntenAantal': '0'}}

# 用推导式替换键名,这里把'name'换成'user_name'
my_dict = { 'user_name' if k == 'name' else k: v for k, v in my_dict.items() }

这种写法更简洁,适合追求代码紧凑的场景,效果和方法二完全一样。

不管用哪种方法,原name键关联的嵌套字典数据都会完整保留,因为我们只是复制了数据的引用,不会修改嵌套内容本身。

内容的提问来源于stack exchange,提问作者S.Benten

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:17:23