python - 为什么只有第一个字典被写入 csv 文件?
问题描述
我使用IMDbPY
库来获取例如 100 部电影信息并将它们存储在 csv 文件中。问题是只有循环中的第一部电影信息会写入 csv 文件。
这是代码:
from imdb import IMDb
import csv
from datetime import datetime
startTime = datetime.now()
ia = IMDb()
movie_id = 2250912
for i in range(1, 101):
movie = ia.get_movie(movie_id)
movie_id += i
print(datetime.now() - startTime)
print (movie_id)
print ('\n')
with open('dict.csv', 'w') as csv_file:
writer = csv.writer(csv_file)
for key, value in movie.items():
writer.writerow([key, value])
解决方案
您的 with 语句在 while 循环的每次迭代中都会覆盖 csv。使用'a'
而不是'w'
附加信息。
推荐阅读
- android - Android NDK - 使用使用不同 API 级别编译的库
- python - 如果每个数字都分配给一个名称,是否有按数字对数组进行排序的功能
- javascript - 当我从后端收到作业成功/失败通知时如何禁用 mat-spinner
- python - 使用您自己保存的模型在 Keras 中进行迁移学习
- angular - 从 Angular 7 发布的表单数据未进入 Laravel 5.7
- google-apps-script - google-apps-script 限制菜单使用/创建给用户
- r - 创建输出表以汇总来自多个数据框的数据
- android - 异步应该是静态错误,Kotlin,Android
- java - 如何使用 gson 和 JsonWriter 反序列化对象数组
- python - 如何在 python 请求中使用 curl 和 -u