📢 最新动态(2025年7月)
AI数据处理需求激增,JSON作为轻量级数据交换格式,依然是开发者的首选,不少新手在转换数据时遇到“数组消失”或“结构混乱”的问题,比如明明想生成[{...}, {...}]
,结果却变成了,或者嵌套层级错乱,今天我们就来聊聊如何优雅驾驭JSON数组!
JSON数组用[]
包裹,
["苹果", "香蕉", "橙子"]
而普通JSON对象用包裹,
{"水果": "苹果", "价格": 5}
常见翻车现场:
如果你想手动创建一个包含多个对象的数组,直接套[]
就行:
[ {"id": 1, "name": "小明"}, {"id": 2, "name": "小红"} ]
不同语言有不同方法,但核心逻辑一致:
Python 🐍
import json data = [{"name": "小明"}, {"name": "小红"}] json_str = json.dumps(data) # 转成JSON字符串
JavaScript 🟨
const data = [{ name: "小明" }, { name: "小红" }]; const jsonStr = JSON.stringify(data);
⚠️ 注意:
比如你的代码可能是这样:
data = {"name": "小明"} # 这是单个对象,不是列表! json_str = json.dumps(data) # 输出:{"name": "小明"},没有[]
修正:用列表包裹它!
data = [{"name": "小明"}] # 这才是数组
有时候数据是这样的:
{ "users": { "user1": {"name": "小明"}, "user2": {"name": "小红"} } }
你以为这是数组,其实是对象套对象!想转成数组?可以这样调整:
{ "users": [ {"name": "小明"}, {"name": "小红"} ] }
假设有一个users.csv
:
name,age
小明,20
小红,22
用Python处理:
import csv import json with open("users.csv", "r") as f: reader = csv.DictReader(f) data = [row for row in reader] # 每一行变成字典,再组成列表 json_str = json.dumps(data, ensure_ascii=False) # 处理中文 print(json_str)
输出:
[{"name": "小明", "age": "20"}, {"name": "小红", "age": "22"}]
[]
包裹,别和搞混。 下次再遇到“JSON数组变没”的问题,记得回来翻翻这篇指南!🎯
(本文参考2025年7月最新开发者社区讨论整理)
本文由 庾黎昕 于2025-07-30发表在【云服务器提供商】,文中图片由(庾黎昕)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/485783.html
发表评论