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

Python如何批量重命名字典列表中所有字典的指定键名

问题描述

需要将字典列表内每个字典中的键Number重命名为ProjectId,编写的renaming()函数运行未达到预期,原始代码如下:

# 此处原变量名存在拼写错误:pojects 应为 projects
pojects = 
[{'Number': '5',
  'Name': 'CFO'},
 {'Number': '7',
  'Name': 'Head of Product'}, 
 {'Number': '6',
  'Name': 'CEO'}]

def renaming(projects):
    for i in projects:
        i['ProjectId'] = i.pop('Number')
        return projects
错误原因
  • return projects的缩进位置错误,被放在了for循环体内部。循环第一次执行、处理完列表第一个字典后就会直接触发返回,后续所有字典都不会被处理。
  • 原始列表的变量名拼写错误,将projects错写为pojects,直接运行会触发名称未定义的报错。
修正方案

将return语句移动到for循环外部,确保所有字典都被处理后再返回结果,同时修正变量名拼写错误:

projects = 
[{'Number': '5',
  'Name': 'CFO'},
 {'Number': '7',
  'Name': 'Head of Product'}, 
 {'Number': '6',
  'Name': 'CEO'}]

def renaming(projects):
    for i in projects:
        i['ProjectId'] = i.pop('Number')
    return projects
运行结果

调用函数后返回的正确结果如下:

[
    {'Name': 'CFO', 'ProjectId': '5'},
    {'Name': 'Head of Product', 'ProjectId': '7'},
    {'Name': 'CEO', 'ProjectId': '6'}
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 04:48:34