csv, IndexError: list index out of range
csv, IndexError: list index out of range
我正在阅读 Python 速成课程 一书中的示例并做示例。现在我陷入了从 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)
high
是行中的第一个元素吗?如果是这样,请记住 Python 从 0 开始计数 - 所以它应该是 high = int(row[0])
由于输入 file 包含空行,您必须确保列表 (row
) 不为空。如果它是空的 - 就跳过它。
类似于:
for row in reader:
if row:
high = int(row[1])
highs.append(high)
我正在阅读 Python 速成课程 一书中的示例并做示例。现在我陷入了从 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)
high
是行中的第一个元素吗?如果是这样,请记住 Python 从 0 开始计数 - 所以它应该是 high = int(row[0])
由于输入 file 包含空行,您必须确保列表 (row
) 不为空。如果它是空的 - 就跳过它。
类似于:
for row in reader:
if row:
high = int(row[1])
highs.append(high)