python - csv,IndexError:列表索引超出范围
问题描述
我正在阅读并做Python Crash Course书中的示例。现在我陷入了从 csv 文件中读取数据的困境。我正在尝试获取max_temperatures
并阅读它的值,但是当我以与书中相同的方式执行此操作时,会显示错误:
IndexError:
high = int(row[1])
IndexError: list index out of range
代码:
import csv
filename = "sitka_weather_history_2014.csv"
with open(filename) as f:
reader = csv.reader(f)
header_row = next(reader)
highs = []
for row in reader:
high = int(row[1])
highs.append(high)
print(highs)
解决方案
由于输入文件包含空行,因此您必须确保列表 ( row
) 不为空。如果它是空的 - 跳过它。
就像是:
for row in reader:
if row:
high = int(row[1])
highs.append(high)
推荐阅读
- javascript - 获取嵌套数组项以附加到 HTML 表中的新列
- android - 从深层链接打开后,我们可以在后台销毁应用程序的实例吗?
- regex - 如何使用 spacy 和 pandas 检查动词的存在?
- python-3.x - python代码计算列表的中位数作为输入
- powershell - 无法在 Powershell Windows 10 上运行时如何修复存储模块 Cmdlet
- sample-data - ScadaLts :从哪里获取示例数据 sql 脚本
- python - Python中用下限和上限替换异常值的函数
- swift - 以编程方式更改 Google 地图大小 (Swift)
- excel - 如何复制特定列中“是”的行的特定列
- php - 如果没有内容,则隐藏整个 div