错误如下:
data = line.split(",") #通过指定分隔符‘,’对字符串进行切片
label = float(data[9]) #统计cvs文件中的列数,【】里的值应该比实际列数少1
我.cvs文件有8列,则应该是
label = float(data[7])
关于Error:IndexError: list index out of range
Where?
对Python中有序序列进行按索引取值的时候,出现这个异常
Why?
对于有序序列: 字符串 str 、列表 list 、元组 tuple进行按索引取值的时候,默认范围为 0 ~ len(有序序列)-1,计数从0开始,而不是从1开始,最后一位索引则为总长度减去1。当然也可以使用 负数表示从倒数第几个,计数从-1开始,则对于有序序列,总体范围为 -len(有序序列) ~ len(有序序列)-1,如果输入的取值结果不在这个范围内,则报这个错
Way?
检查索引是否在 -len(有序序列) ~ len(有序序列)-1 范围内,修改正确
错误代码:
1 2 3 4 |
|
正确代码:
1 2 3 4 |
|
参考资料:
Python split()方法:https://www.runoob.com/python/att-string-split.html
IndexError: list index out of range:https://www.cnblogs.com/2bjiujiu/p/9063864.html