一、Json对象的序列化
在 Python 中,json
模块提供了 dump()
和 dumps()
两个主要的函数,用于将 Python 对象转换为 JSON 格式。
json.dumps()
函数
json.dumps()
函数用于将 Python 对象转换为 JSON 格式的字符串。
import json
# Python 字典
data = {'name': 'John', 'age': 30, 'city': 'New York'}
# 将字典转换为 JSON 字符串
json_string = json.dumps(data)
print(json_string)
# 输出: {"name": "John", "age": 30, "city": "New York"}
json.dump()
函数
json.dump()
函数用于将 Python 对象写入 JSON 文件。
import json
# Python 字典
data = {'name': 'John', 'age': 30, 'city': 'New York'}
# 将字典写入 JSON 文件
with open('output.json', 'w') as json_file:
json.dump(data, json_file)
dump()
函数接受两个参数:第一个参数是要写入的 Python 对象,第二个参数是文件对象,通常使用 open()
函数打开一个文件,然后将文件对象传递给 dump()
。
二、JSON对象的读取
在 Python 中,json
模块提供了 load()
和 loads()
两个主要的函数,用于从 JSON 格式读取数据并将其转换为 Python 对象。
json.loads()
函数
json.loads()
函数用于将 JSON 格式的字符串转换为 Python 对象。
import json
# JSON 字符串
json_string = '{"name": "John", "age": 30, "city": "New York"}'
# 将 JSON 字符串转换为 Python 对象(通常是字典或列表)
python_data = json.loads(json_string)
print(python_data)
# 输出: {'name': 'John', 'age': 30, 'city': 'New York'}
json.load()
函数
json.load()
函数用于从 JSON 文件中读取数据并将其转换为 Python 对象。
import json
# 从 JSON 文件读取数据
with open('input.json', 'r') as json_file:
loaded_data = json.load(json_file)
print(loaded_data)
# 输出: {'name': 'John', 'age': 30, 'city': 'New York'}
load()
函数接受一个文件对象作为参数,通常使用 open()
函数打开一个 JSON 文件,然后将文件对象传递给 load()
。