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

Python实现JSON结构转换:将name值转为键intValue值转为对应值

转换方案说明
  • 不需要额外安装第三方工具,Python原生能力就能直接完成这个转换,不存在必须写冗余“暴力遍历”代码的问题。
  • 该操作本质是从结构化键值对列表构造字典,属于Python字典生成的标准场景,没有专门为这个单一逻辑设计的独立“开箱即用工具”——原生语法本身就是最开箱即用的方案。
最符合Pythonic规范的实现

字典推导式是Python为这类键值映射场景专门设计的原生语法,是社区公认的这类转换场景的标准写法,代码简洁、可读性强、执行效率高(遍历逻辑在解释器底层C层实现,比纯Python层手写显式循环更快):

import json

# 原始JSON字符串,替换成你的实际数据
raw_json_str = """
[
    {"name":"field1","intValue":"1"},
    {"name":"field2","intValue":"2"},
    {"name":"fieldN","intValue":"N"}
]
"""

# 加载原始数据为Python列表
raw_data = json.loads(raw_json_str)
# 一行完成格式转换
converted_data = {item["name"]: item["intValue"] for item in raw_data}

# 若需要输出为JSON格式字符串,执行下面这行即可
converted_json_str = json.dumps(converted_data, indent=2, ensure_ascii=False)

不推荐的写法说明

你可能见过用dict()搭配map+lambda的写法:

# 可读性差,不符合现代Python编码规范,不推荐
converted_data = dict(map(lambda x: (x["name"], x["intValue"]), raw_data))

这种写法的执行效率和字典推导式接近,但可读性远低于字典推导式,不属于社区推荐的Pythonic写法。

注意事项

如果原始数组中存在name字段重复的条目,转换后后面的条目值会覆盖前面同键的值,这是Python字典的固有特性。如果你的业务场景需要保留重复键的所有值,可以在推导式基础上扩展对应处理逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 04:57:18