📜  python中的json.stringify等价物(1)

📅  最后修改于: 2023-12-03 14:46:38.033000             🧑  作者: Mango

Python 中的 JSON 序列化操作

在 Python 中,我们可以使用 json 模块来进行 JSON 序列化和反序列化操作。下面就来介绍一下具体的使用方法。

JSON 序列化

JSON 序列化指将 Python 对象转化为 JSON 字符串。使用 json.dumps() 函数即可实现。

import json

data = {'name': 'Tom', 'age': 20}
json_str = json.dumps(data)

print(json_str)
# 输出:{"name": "Tom", "age": 20}

其中,data 是一个 Python 字典对象,json_str 是它被序列化后得到的 JSON 字符串。

json.dumps() 还有一些可选的参数,如 indentseparatorssort_keys 等。这些参数可以帮助我们控制序列化后的 JSON 字符串格式。具体使用方法可以查看官方文档。

JSON 反序列化

JSON 反序列化指将 JSON 字符串转化为 Python 对象。使用 json.loads() 函数即可实现。

import json

json_str = '{"name": "Tom", "age": 20}'
data = json.loads(json_str)

print(data)
# 输出:{'name': 'Tom', 'age': 20}

其中,json_str 是一个 JSON 字符串,data 是它被反序列化后得到的 Python 对象。

json.loads() 同样也有一些可选的参数,如 object_hookparse_floatparse_int 等。这些参数可以帮助我们控制反序列化后的 Python 对象类型。具体使用方法可以查看官方文档。

JSON 序列化与反序列化

有时候,我们需要同时进行 JSON 序列化和反序列化操作。此时,可以使用 json.dump()json.load() 函数完成。

import json

data = {'name': 'Tom', 'age': 20}

# 将 Python 对象序列化为 JSON 并写入文件
with open('data.json', 'w') as f:
    json.dump(data, f)

# 从文件中读取 JSON 并反序列化为 Python 对象
with open('data.json', 'r') as f:
    data = json.load(f)

print(data)
# 输出:{'name': 'Tom', 'age': 20}

其中,json.dump() 函数将 Python 对象序列化为 JSON 并写入文件,json.load() 函数从文件中读取 JSON 并反序列化为 Python 对象。

以上就是 Python 中的 JSON 序列化操作。使用 json 模块,我们可以方便地将 Python 对象转化为 JSON 字符串,也可以将 JSON 字符串反序列化为 Python 对象,极大地方便了我们的数据处理。