索引器错误:在python中列表分配索引超出范围
索引器错误:在python中列表分配索引超出范围 我做错了什么。我是个新手索引器错误:在python中列表分配索引超出范围,python,dictionary,Python,Dictionary,索引器错误:在python中列表分配索引超出范围 我做错了什么。我是个新手 actual_ans_dict = [] for data in prsnobj.result: actual_ans_dict[data[0]] = data[1] print actual_ans_dict 这是因为您的actual_ans_dict为空,这意味着它还没有任何索引 actual_ans_dict = [None]*max([data[0] for data in prsnobj.re
actual_ans_dict = []
for data in prsnobj.result:
actual_ans_dict[data[0]] = data[1]
print actual_ans_dict
这是因为您的
actual_ans_dict
为空,这意味着它还没有任何索引
actual_ans_dict = [None]*max([data[0] for data in prsnobj.result]) # not very pythonic, actualy
for data in prsnobj.result:
actual_ans_dict[data[0]] = data[1]
print actual_ans_dict
这将使您能够为特定索引赋值。
有一种更正确、更简短的方法:
actual_ans_dict = [data[1] for data in prsnobj.result]
actual_ans_dict
是一个空列表。您正试图将值设置为actual\u ans\u dict[data[0]]
,但具有此索引的元素不存在。您可以将
actual_ans_dict
的类型更改为:
将列表称为dict有什么意义?[]对于列表,{}对于字典
actual_ans_dict = {}
for data in prsnobj.result:
actual_ans_dict[data[0]] = data[1]
print actual_ans_dict