📅  最后修改于: 2023-12-03 14:43:34.368000             🧑  作者: Mango
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前后端数据的传输。它使用文本来表示数据对象,易于阅读和编写,同时也容易解析和生成。
Python 是一种解释型、交互式、面向对象的高级程序设计语言,常用于数据分析、人工智能、Web开发等领域。Python 作为一种强大的语言,对 JSON 的支持也非常好。
在 Python 中,我们可以使用内置的 json 模块来解析和生成 JSON 格式的数据,同时也可以将 JSON 字符串转换为 Python 对象,以便于操作和处理。
我们可以使用 json 模块中的 loads() 函数来解析 JSON 字符串。该函数接收一个 JSON 字符串,并将其转换成 Python 对象。
import json
# 定义 JSON 字符串
json_str = '{"name": "John Smith", "age": 26, "gender": "male", "hobbies": ["reading", "music", "sports"]}'
# 解析 JSON 字符串
data = json.loads(json_str)
# 打印 Python 对象
print(data)
输出:
{'name': 'John Smith', 'age': 26, 'gender': 'male', 'hobbies': ['reading', 'music', 'sports']}
我们也可以使用 json 模块中的 dumps() 函数来生成 JSON 格式的数据。该函数接收一个 Python 对象(通常为字典或列表),并将其转换成 JSON 字符串。
import json
# 定义 Python 对象
data = {
"name": "John Smith",
"age": 26,
"gender": "male",
"hobbies": ["reading", "music", "sports"]
}
# 生成 JSON 字符串
json_str = json.dumps(data)
# 打印 JSON 字符串
print(json_str)
输出:
{"name": "John Smith", "age": 26, "gender": "male", "hobbies": ["reading", "music", "sports"]}
在 Python 中,我们可以通过 dot notation 或者 bracket notation 的方式来访问 JSON 对象的属性值。
import json
# 定义 JSON 字符串
json_str = '{"name": "John Smith", "age": 26, "gender": "male", "hobbies": ["reading", "music", "sports"]}'
# 解析 JSON 字符串
data = json.loads(json_str)
# dot notation
print(data.name) # 抛出 AttributeError 异常,因为 JSON 对象没有 name 属性
print(data.age) # 输出 26
print(data.hobbies[0]) # 输出 reading
# bracket notation
print(data['name']) # 输出 John Smith
print(data['age']) # 输出 26
print(data['hobbies'][0]) # 输出 reading
需要注意的是,使用 dot notation 访问 JSON 对象属性值时,该属性名必须符合 Python 变量名规范,否则会抛出 AttributeError 异常。
Python 内置的 json 模块非常方便用来解析、生成和处理 JSON 格式的数据。通过使用 json 模块,我们可以在 Python 中轻松地完成 JSON 数据的操作,从而实现前后端之间的数据传输。