以下代碼取自 CS50 第 7 周。它打開一個檔案 (favorites.csv),從檔案中讀取常見電視節目的標題,并將標題和標題計數添加到字典中。但是,我不明白它為什么起作用。一開始,標題字典被初始化。如果標題在標題字典中,則稍后將計數添加到字典中。但是,我不明白為什么標題字典包含任何標題?收藏夾.csv 檔案中的標題在哪里添加到字典中?我會認為“如果標題中的標題”條件總是錯誤的,因為此時字典似乎是空的?問這個有點尷尬,但經過相當長的時間研究這個問題后,我顯然不明白這一點。
# Prints popularity of titles in CSV, sorted by title
import csv
# For accumulating (and later sorting) titles
titles = {}
# Open CSV file
with open("favorites.csv", "r") as file:
# Create DictReader
reader = csv.DictReader(file)
# Iterate over CSV file, adding each (uppercased) title to dictionary
for row in reader:
# Canoncalize title
title = row["title"].strip().upper()
# Count title
if title in titles:
titles[title] = 1
else:
titles[title] = 1
# Print titles in sorted order
for title in sorted(titles):
print(title, titles[title])
uj5u.com熱心網友回復:
什么時候
if title in titles:
是False,else分支運行:
titles[title] = 1
這會將標題添加到字典中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/436680.html
下一篇:字典-僅列印部分值
