介绍
一种轻量级数据交互格式 JSON 语法是 JavaScript 对象表示语法的子集。
- 数据在名称/值对中
- 数据由逗号 , 分隔
- 使用斜杆 \ 来转义字符
- 大括号 {} 保存对象
- 中括号 [] 保存数组,数组可以包含多个对象
格式
[
{
"name":"张大山",
"age":11
},
{
"name":"王大锤",
"age":15
},
{
"name":"赵小虎",
"age":14
}
]pythonToJson为例
dumps
json.dump(json数据, ensure_ascii = 布尔)
模块: json
功能:将pythonstr格式转为json格式
import json
# 相当于列表嵌套字典
data = [
{
"name": "张大山",
"age": 11
},
{
"name": "王大锤",
"age": 15
},
{
"name": "赵小虎",
"age": 14
}
]
json_str = json.dumps(data, ensure_ascii=False)
# ensure_ascii为False时代表不使用ascii码的方法转换字符,而是原字符直接输出
print(json_str)
# output:
# [{"name":"张大山", "age":11}, {"name":"王大锤", "age":15}, {"name":"赵小虎", "age":14}]import json
dictionary = {"name":"张大山", "age":11}
json_str = json.dumps(dictionary, ensure_ascii=False)
print(json_str)
# output:{"name":"张大山", "age":11}load
json.load(数据)
模块:json
json.load()会抛出异常,如果JSON数据格式不正确或者文件无法读取。你应该准备好处理这些异常,例如使用try...except语句
功能:将json格式(从文件中)转化为pythonstr格式
//data.json
{
"name": "Alice",
"age": 30,
"is_student": false
}import json
try:
with open('data.json', 'r') as file:
data = json.load(file)
print(data)
except json.JSONDecodeError as e:
print(f"JSON decode error: {e}")
except FileNotFoundError as e:
print(f"File not found: {e}")
except Exception as e:
print(f"An error occurred: {e}")