【发布时间】:2016-10-29 21:21:29
【问题描述】:
if productid==row[0]: #This means it runs every row in the reader file which is the csv file in this case
price = row[2]
stocklevel = row[3]
reorderlevel = row[4]
targetlevel = row[5]
total = float(amount)*float(price)
totalprice = float(totalprice)+float(total)
stocklevel = float(stocklevel)-float(amount)
newstock = (stocklevel)
b = open('products.csv', 'w')
a = csv.writer(b)
data = [['row[3]', 'row[4]', 'row[5]'],
['293', '219'],
['54', '13']]
a.writerows(data)
b.close()
基本上我一直收到这个错误文件
“E:\Python Programme\pythonv5.py”,第 71 行,在 productlist() 文件“E:\Python Programme\pythonv5.py”,第 9 行,在 productlist print(row[0]+" "+row[1]+" "+row[2]) IndexError: list index out of range
【问题讨论】:
-
你能显示你的CSV文件的数据结构和它的内容吗?因为索引错误非常明显。在这种情况下,行 [0](或 1 或 2)不存在。
-
错误是指带有打印语句的行,但您的代码显示没有打印语句。索引列表超出范围意味着您正在尝试访问例如列表中只有 2 个对象的第三个对象。或者你的列表可能是空的,然后它会随时说。尝试将
print(row[0]...更改为print(len(row).)以查看列表中有多少对象。
标签: javascript python python-2.7 python-3.x indexing