我想将我的csv.reader中的东西转换为字典。我执行了这个帖子Add new keys to a dictionary?的指示,但我一直得到IndexError: list index out of range
。我怎样才能解决这个问题?向字典中添加新元素
import wx
import csv
info = csv.reader(open('report.csv', 'rb'),delimiter=',')
length = 0
info_list = []
for row in info: #search each row in the report
info_list.append([length,row[1],row[4]])
length = length + 1
print length
dict_info = {}
rows = 0
counter = 0
while counter < length:
for item in info_list:
dict_info[item[rows]] = [item[rows + 1], item[rows + 2]]
rows = rows + 3
counter = counter + 1
print dict_info
你能解释一下你想在段落中实现什么吗? –
您正在遍历您迭代的第二个'item'的边界,这是一个列表,因为'while'循环的每次迭代都会将您正在索引到'item'的'row'值加3,但是' item'只有3个元素长(因为你在循环'info'的时候创建了它)。列表中出现索引错误;字典没有问题。我第二@JonClements虽然想知道你实际上想要做什么。 –