json介绍、python数据和json数据的相互转换
- 电脑硬件
- 2025-09-16 15:15:01

目录
一 json介绍
json是什么?
用处
Json 和 XML 对比
各语言对Json的支持情况
Json规范详解
二 python数据和json数据的相互转换
dumps() : 转换成json
loads(): 转换成python数据
总结
一 json介绍 json是什么?
实质上是一条字符串
是一种文本数据格式, 是一种文本规范 是一种字符串规范
用处一般适合文本量不大,且需要记录树形结构的数据 或 需要灵活扩展数据
Json 和 XML 对比Json文本 更简洁易懂,对人更友好 适合数据量不大,结构不复杂的场景 (如:后端接口的参数) 比XML更小、更快、更易解析
XML 文本 程序处理更方便,对机器更友好 适合数据量大,结构复杂的场景(如:HTML是基于XML的)
各语言对Json的支持情况1 Json实质上是一条字符串,程序中使用json,需要特定的方法转换为对象变量才能使用 2 Json是一种文本规范,各语言对Json的支持情况: JavaScript:原生支持 √ Python:原生支持.import json √ Java:原生不支持,需要引入Gson或FastJson C++:原生不支持,引入Jsoncpp等库
Json规范详解支持6种类型的值 1 字符串 如 "test String" 字符串中如果有双引号,需要使用\转义,如"test \" String"
2 数字 如 0.2 999 -1.1 可以是整数、浮点数(小数) 3 布尔值 true false
4 null (空值)
5 对象 可嵌套数据,如 {"key1":"value1","key2":"value2"} 包含在一对{}之内 用,隔开多个键值对 *键值对的 键 必须为字符串 *键值对的 值 可以是6种值类型的任意一种,且无需统一类型 {"key1":"value1","key2":true,"key3":{},"key4":23}
6 数组 可嵌套数据,如 ["value1","value2","value3"] 包含在一对[]之内的 单个数组内的多个值用,隔开 数组内的值可以是Json支持的6种值的任意一种 单个数组内的多个值无需统一类型
备注: Json文本中多余的空格、换行不会有实质的影响,仅仅是为了方便阅读
二 python数据和json数据的相互转换 dumps() : 转换成json import json #准备列表 data=[{"姓名":"小明","年龄":"12"},{"姓名":"小红","年龄":"13"},{"姓名":"小李","年龄":"8"}] #转换成json # 有中文的时候加 ensure_ascii=False json_str = json.dumps(data,ensure_ascii=False) print(json_str) print(type(json_str)) #准备字典 #转换成json dic1={"水果":"西瓜","蔬菜":"胡萝卜","蛋白质":"牛肉"} json_str2 = json.dumps(dic1,ensure_ascii=False) print(json_str2) print(type(json_str2))json实质上就是字符串str
loads(): 转换成python数据 import json #准备json数据 s1='[{"姓名":"小明","年龄":"12"},{"姓名":"小红","年龄":"13"},{"姓名":"小李","年龄":"8"}]' #转换成列表 l1 = json.loads(s1) print(l1) print(type(l1)) #准备json数据 #转换成字典 s2='{"水果":"西瓜","蔬菜":"胡萝卜","蛋白质":"牛肉"}' d1 = json.loads(s2) print(d1) print(type(d1)) 总结json介绍、python数据和json数据的相互转换由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“json介绍、python数据和json数据的相互转换”