目录
json
模块是 Python 标准库中用于处理 JSON 数据的模块。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于数据传输和存储。json
模块提供了将 Python 对象转换为 JSON 格式(序列化)和将 JSON 格式的数据转换回 Python 对象(反序列化)的方法。
常用功能
- 序列化(将 Python 对象转换为 JSON 字符串)
- 反序列化(将 JSON 字符串转换为 Python 对象)
- 处理 JSON 文件
主要函数和方法
1. json.dumps()
将 Python 对象转换为 JSON 字符串(序列化)。
import json
# Python 对象
data = {
"name": "Alice",
"age": 30,
"is_student": False,
"courses": ["Math", "Science"]
}
# 序列化
json_str = json.dumps(data)
print(json_str)
输出:
{"name": "Alice", "age": 30, "is_student": false, "courses": ["Math", "Science"]}
2. json.loads()
将 JSON 字符串转换为 Python 对象(反序列化)。
import json
# JSON 字符串
json_str = '{"name": "Alice", "age": 30, "is_student": false, "courses": ["Math", "Science"]}'
# 反序列化
data = json.loads(json_str)
print(data)
输出:
{'name': 'Alice', 'age': 30, 'is_student': False, 'courses': ['Math', 'Science']}
3. json.dump()
将 Python 对象转换为 JSON 格式,并直接写入文件。
import json
# Python 对象
data = {
"name": "Alice",
"age": 30,
"is_student": False,
"courses": ["Math", "Science"]
}
# 写入 JSON 文件
with open('data.json', 'w') as f:
json.dump(data, f)
4. json.load()
从文件读取 JSON 数据,并将其转换为 Python 对象。
import json
# 从 JSON 文件读取数据
with open('data.json', 'r') as f:
data = json.load(f)
print(data)
参数说明
-
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False)
:obj
:要序列化的 Python 对象。indent
:指定缩进级别,使输出的 JSON 字符串更具可读性。separators
:控制分隔符,默认是(', ', ': ')
。default
:指定如何处理非 JSON 可序列化的对象,如自定义类型。
-
json.loads(s, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=OrderedDict)
:s
:要反序列化的 JSON 字符串。object_hook
:指定如何将 JSON 对象转换为 Python 对象。parse_float
、parse_int
、parse_constant
:自定义解析浮点数、整数和常量的函数。
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » json 模块
发表评论 取消回复