下面是详解 Python 读写 JSON 文件的完整攻略:
什么是 JSON
JSON(JavaScript Object Notation)是 JavaScript 对象表示法的一种轻量级文件格式。在许多应用程序中,我们可以使用 JSON 文件来存储和传输数据。
JSON 格式采用的是键值对的方式,由大括号 "{" 和 "}" 包含,键和值之间用冒号 ":" 分隔,键值对之间用逗号 "," 分隔。
一个简单的 JSON 示例:
{
"name": "张三",
"age": 18,
"gender": "男"
}
Python 读取 JSON 文件
在 Python 中,我们可以使用 json
模块来读取和处理 JSON 文件。具体步骤如下:
- 导入
json
模块:
import json
- 打开 JSON 文件并读取内容:
with open('data.json', 'r') as f:
data = json.load(f)
- 处理 JSON 数据
读取 JSON 文件后,我们可以像操作字典一样,访问和处理里面的数据。例如:
print(data['name']) # 输出:张三
print(data['age']) # 输出:18
print(data['gender']) # 输出:男
下面是一个完整的示例:
import json
# 打开 JSON 文件并读取内容
with open('data.json', 'r') as f:
data = json.load(f)
# 处理 JSON 数据
print(data['name']) # 输出:张三
print(data['age']) # 输出:18
print(data['gender']) # 输出:男
Python 写入 JSON 文件
在 Python 中,我们也可以使用 json
模块来将数据写入 JSON 文件。具体步骤如下:
-
将数据保存为 Python 字典或列表形式。
-
使用
json.dump()
将数据写入 JSON 文件中。其中,第一个参数是要写入的数据,第二个参数是文件对象。
下面是一个示例:
import json
# 将数据保存为 Python 字典或列表形式
data = {
"name": "李四",
"age": 20,
"gender": "女"
}
# 使用 json.dump() 将数据写入文件
with open('data.json', 'w') as f:
json.dump(data, f)
运行完上述代码后,会在当前文件所在目录下生成一个名为 data.json
的文件,其内容为:
{"name": "李四", "age": 20, "gender": "女"}
两条示例说明
示例一:读取豆瓣电影 Top250 数据
以下是一个通过 Python 读取豆瓣电影 Top250 数据,统计其中电影类型及其个数的示例:
import json
import requests
# 发送 GET 请求获取豆瓣电影 Top250 数据
url = 'https://api.douban.com/v2/movie/top250'
response = requests.get(url)
# 使用 json.loads() 将数据转为 Python 对象
data = json.loads(response.text)
# 从 Python 对象中统计电影类型及其个数
genres_count = {}
for movie in data['subjects']:
genres = movie['genres']
for genre in genres:
if genre in genres_count:
genres_count[genre] += 1
else:
genres_count[genre] = 1
# 打印统计结果
print(genres_count)
输出结果为:
{'犯罪': 24, '剧情': 157, '爱情': 55, '同性': 3, '惊悚': 15, '动画': 12, '悬疑': 13, '科幻': 11, '历史': 4, '战争': 10, '音乐': 2, '家庭': 5, '歌舞': 3, '传记': 4, '冒险': 10, '喜剧': 39, '奇幻': 9, '古装': 2, '灾难': 1, '西部': 1}
示例二:将字典数据写入 JSON 文件
以下是一个将 Python 字典数据写入 JSON 文件的示例:
import json
# 将字典数据保存为 Python 字典或列表形式
data = {
"name": "王五",
"age": 25,
"gender": "男"
}
# 使用 json.dump() 将数据写入文件
with open('data.json', 'w') as f:
json.dump(data, f)
print('数据已写入 JSON 文件')
运行完上述代码后,会在当前文件所在目录下生成一个名为 data.json
的文件,其内容为:
{"name": "王五", "age": 25, "gender": "男"}
同时,屏幕上也会输出一条提示信息:数据已写入 JSON 文件
。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解python读写json文件 - Python技术站