在 Python 中使用 JSON 数据主要涉及到两个关键的步骤:编码(将 Python 对象转换为 JSON 格式)和解码(将 JSON 格式数据转换为 Python 对象)。
一、编码
使用 json
模块中的 dumps()
函数将 Python 对象转换为 JSON 格式的字符串。
python
import json
# 一个 Python 字典
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# 将 Python 对象编码为 JSON 字符串
json_data = json.dumps(data)
print(json_data)
上述代码中,json.dumps()
方法接收一个 Python 对象(这里是一个字典)作为参数,并返回一个 JSON 格式的字符串。
还可以使用 indent
参数来格式化输出的 JSON 字符串,使其具有更好的可读性
python
json_data_formatted = json.dumps(data, indent=4)
print(json_data_formatted)
这将使输出的 JSON 字符串带有缩进,更加清晰易读。
二、解码
使用 json
模块中的 loads()
函数将 JSON 格式的字符串转换为 Python 对象。
python
import json
# 一个 JSON 格式的字符串
json_str = '{"name": "John", "age": 30, "city": "New York"}'
# 将 JSON 字符串解码为 Python 对象
data = json.loads(json_str)
print(data)
print(data["name"])
在上述代码中,json.loads()
方法接收一个 JSON 字符串作为参数,并返回一个 Python 对象(这里是一个字典)。然后可以像操作普通 Python 对象一样操作这个返回的对象,例如通过键来访问对应的值。
如果是从文件中读取 JSON 数据并解码,可以使用以下方法:
- 首先创建一个包含 JSON 数据的文件(例如名为
data.json
):
plaintext
{
"name": "Alice",
"age": 25,
"hobbies": ["reading", "painting"]
}
- 然后在 Python 中使用以下代码读取并解码:
python
import json
with open('data.json', 'r') as f:
data = json.load(f)
print(data)
这里使用 with open()
语句来安全地打开文件,json.load()
方法从文件对象中读取 JSON 数据并转换为 Python 对象。