json 模块
Coddy Python JSON 课程的第 3 课,共 9 课。
json 模块是 Python 的内置库,提供了用于处理 JSON 数据的函数。它可以将 Python 对象编码为 JSON 字符串,也可以将 JSON 字符串解码为 Python 对象。
导入 json 模块
要在 Python 中使用 JSON 模块,你需要先导入它:
import json
主要函数
json 模块提供了四个主要函数:
json.dumps():将 Python 对象转换为 JSON 字符串json.loads():解析 JSON 字符串并返回 Python 对象json.dump():将 Python 对象写入 JSON 文件json.load():读取 JSON 文件并返回 Python 对象
基本用法
下面通过一个简单示例,看看如何使用 json.dumps() 和 json.loads():
import json
# Python 字典
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# 将 Python 对象转换为 JSON 字符串
json_string = json.dumps(data)
print(json_string)
# 将 JSON 字符串解析回 Python 对象
parsed_data = json.loads(json_string)
print(parsed_data)
无论你是使用 API、配置文件,还是在不同系统之间交换数据,这个模块都是在 Python 中处理 JSON 数据的重要工具。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
挑战
简单创建一个程序,演示 json 模块的四个主要函数:dumps()、loads()、dump() 和 load()。
- 创建一个 Python 字典,包含以下键值对:
- "name": "Python"
- "year": 1991
- "creator": "Guido van Rossum"
- "is_oop": true
- "versions": ["2.7", "3.6", "3.7", "3.8", "3.9"]
- 使用
json.dumps()将这个字典转换为 JSON 字符串,并打印结果。 - 使用
json.loads()将 JSON 字符串解析回 Python 对象,并打印对象的类型。 - 使用
json.dump()将字典写入名为 "python_info.json" 的文件。 - 使用
json.load()将 "python_info.json" 的内容读取到新的 Python 对象中。 - 打印这个新对象中与 "creator" 键关联的值。
将提供以下输入:
Python
1991
Guido van Rossum
true
2.7,3.6,3.7,3.8,3.9
注意:版本输入是一个逗号分隔的字符串,应在 Python 字典中转换为列表。
亲手试试
import json
# 读取输入
name = input()
year = int(input())
creator = input()
is_oop = input().lower() == 'true'
versions = input().split(',')
# 创建字典
python_info = {
"name": name,
"year": year,
"creator": creator,
"is_oop": is_oop,
"versions": versions
}
# TODO: 在下方编写代码,完成挑战
# 1. 使用 json.dumps() 将字典转换为 JSON 字符串
# 2. 使用 json.loads() 将 JSON 字符串解析为 Python 对象
# 3. 使用 json.dump() 将字典写入名为 "python_info.json" 的文件
# 4. 使用 json.load() 读取 "python_info.json" 的内容
# 5. 打印加载的对象中与 "creator" 键关联的值
# 在这里打印你的结果
print() # TODO: 将此处替换为你的输出Python JSON中的所有课
自己练习: Python 在线编译器