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

Python中如何修改字典的键(而非对应值)?

Python中仅修改字典键而保留对应值的实现方法

当然可以,Python里有多种方法实现只修改字典的键、同时保留对应值的需求,以下是几种实用方案:

1. 最简洁的单键修改:用pop()方法一步完成

dict.pop()方法会删除指定键并返回对应的值,我们可以直接把返回值赋值给新键,一步完成修改:

my_dict = {"old_key": "example_value"}
# 把old_key改成new_key,值保持不变
my_dict["new_key"] = my_dict.pop("old_key")

如果担心旧键不存在会报错,可以结合存在性检查做安全处理:

if "old_key" in my_dict:
    my_dict["new_key"] = my_dict.pop("old_key")
else:
    print("旧键不存在")

2. 批量修改键:用字典推导式

如果需要一次性修改多个键,用字典推导式更高效,先定义键的映射关系,再生成新字典:

original_dict = {"a": 1, "b": 2, "c": 3}
# 定义旧键到新键的映射
key_map = {"a": "alpha", "b": "beta"}
# 生成新字典,未在映射里的键保持不变
new_dict = {key_map.get(k, k): v for k, v in original_dict.items()}

3. 基础分步操作:取值→加新键→删旧键

这是最直观的分步操作,适合理解底层逻辑:

my_dict = {"old_key": "test_value"}
# 1. 获取旧键对应的值
value = my_dict["old_key"]
# 2. 添加新键并赋值
my_dict["new_key"] = value
# 3. 删除旧键
del my_dict["old_key"]

注意事项

  • 新键如果已经存在于字典中,赋值操作会覆盖原有的值,建议操作前先检查if "new_key" not in my_dict;
  • 字典的键必须是不可变类型(如字符串、数字、元组),修改后的新键也要符合这个规则。

内容的提问来源于stack exchange,提问作者Fateme

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 00:05:25