[英]multiple lists from csv dictreader
我有一个简单的 CSV 文件,其中包含两个键“标题”和“作者”以及一堆数据。
我想列出标题,然后列出作者。 我的代码如下。 它打印 title_list 但没有 author_list,为什么?
import csv
with open("books.csv", encoding="utf-8-sig") as books_csv:
books_reader = csv.DictReader(books_csv)
title_list = [book["Title"] for book in books_reader]
author_list = [book["Author"] for book in books_reader]
print(title_list)
print(author_list)```
books_reader
是一个迭代器。 当您使用 list-comprehension 来定义title_list
时,您会耗尽迭代器,而使books_reader
空。 这就是为什么当你 go 定义author_list
时它什么都不返回。 对这个问题使用列表理解不是正确的解决方案。 您可能正在寻找以下内容:
import csv
title_list = []
author_list = []
with open("books.csv", encoding="utf-8-sig") as books_csv:
books_reader = csv.DictReader(books_csv)
for book in books_reader:
title_list.append(book["Title"])
author_list.append(book["Author"])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.