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

Python如何基于当前值批量修改同一字典内的多个值

Python字典批量修改值方案

可以通过带if-elif分支的for循环实现需求,无需生成新字典,直接原地修改原字典内容即可。

你之前的写法存在两个问题:

  1. 仅遍历字典的values(),只能拿到值无法获取对应的键,无法定位修改原字典的条目
  2. 条件判断中误用了赋值运算符=,Python判断相等需要用==,否则会触发语法错误

基础实现(if-elif分支版本)

直接遍历字典的items()同时获取键和值,匹配到对应分类后直接修改原字典的键值:

for key, value in objects.items():
    if value == "colour":
        objects[key] = 1
    elif value == "food":
        objects[key] = 2
    elif value == "object":
        objects[key] = 3

优化实现(映射字典版本,适合分类较多的场景)

如果后续需要新增分类映射,建议提前定义分类和目标值的映射字典,不需要堆叠大量if-elif分支,维护成本更低:

# 分类映射表,新增分类只需修改该字典即可
category_mapping = {
    "colour": 1,
    "food": 2,
    "object": 3
}

for key, value in objects.items():
    if value in category_mapping:
        objects[key] = category_mapping[value]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 02:54:08