我需要扫描.csv文件中的每一行,但是一旦我到达它就会给我一个错误。
def percentage():
for line in csv_file:
temp = line.strip("\n")
measureType = temp.split(",")[5][1: -1]
if measureType == "PERCENT":
year = line.split(",")[1][1: -1]
percentage = line.split(",")[6][1: -2]
country = line.split(",")[0][1: -1]
if float(percentage) < 50:
output.addCountry(country, year, percentage)
当我浏览文件时,一旦它结束,它会给我一个错误:
IndexError: list index out of range
以下一行:
measureType = temp.split(",")[5][1: -1]
我非常困惑,不知道我要修复什么。
答案 0 :(得分:1)
关于cosinepenguin说的话,你将不得不看最后一行。
获取错误的原因是因为您尝试按每个逗号划分行,然后尝试获取不存在的索引。
示例:
array = [0, 1, 2]
在此数组中有3个索引,因此如果您尝试获取并且索引高于最后一个索引,则会收到错误IndexError: list index out of range
。
因此,请确保分割后的最后一行包含您需要的所有索引。