Python: 序列化为JSON对象及JSON对象读取

一、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()

猜你喜欢

转载自blog.csdn.net/Ethan_Rich/article/details/135039392
今日推荐