我有一個帶有兩個鍵的簡單 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)```
uj5u.com熱心網友回復:
books_reader是一個迭代器。當您使用串列理解來定義時,title_list您將耗盡迭代器而books_reader留空。這就是為什么當你去定義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"])
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/397064.html
