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

Python列表转JSON方法:循环生成指定格式JSON结构的实现

嘿,我来帮你搞定这两个Python和JSON相关的问题!

1. 如何在Python中将列表转换为JSON?

Python内置了json模块专门用来处理JSON数据,把列表转成JSON其实很简单,核心就两步:

  • 先导入json模块
  • 用json.dumps()方法把Python列表转换成JSON格式的字符串;如果要直接写入文件,就用json.dump()方法

举个直观的例子:

import json

# 定义一个普通Python列表
fruit_list = ["apple", "banana", "orange"]
# 转换为JSON字符串
json_str = json.dumps(fruit_list)
print(json_str)  # 输出结果:["apple","banana","orange"]

# 如果要写入文件的话
with open("fruits.json", "w") as f:
    json.dump(fruit_list, f)
2. 把指定列表转换为目标JSON结构的正确实现方式

你现在的代码只是循环打印出每个单独的字典,但没有把这些字典收集到一个列表里,所以没法得到你想要的[{"name":"mark"},{"name":"john"},{"name":"will"}]结构。咱们调整一下:

首先创建一个空列表用来存储结果,然后循环原列表时,把每个生成的{"name": 名字}字典添加到这个空列表里,最后如果需要转成JSON字符串,再用json.dumps()处理就行。

完整代码如下:

import json

test = ["mark","will","john"]
# 创建空列表存储最终结果
target_list = []
# 循环遍历原列表,生成字典并添加到结果列表
for name in test:
    target_list.append({"name": name})

# 查看Python格式的结果
print(target_list)  # 输出:[{"name":"mark"},{"name":"will"},{"name":"john"}]
# 转换成JSON字符串
json_target = json.dumps(target_list)
print(json_target)  # 输出:"[{"name":"mark"},{"name":"will"},{"name":"john"}]"

另外,如果你想写得更简洁,还可以用列表推导式一行搞定:

test = ["mark","will","john"]
target_list = [{"name": name} for name in test]

这样就完美得到你想要的结构啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 18:17:49