Python 2.7 字典键错误

Python 2.7 字典键错误,python-2.7,csv,numpy,Python 2.7,Csv,Numpy,我正在尝试用csv文件中的值构造一个字典。假设有10列,我想将第一列设置为键,其余列设置为值。 如果设置为for循环,则字典必须只有一个值。请给我指点路 import csv import numpy aname = {} #loading the file in numpy result=numpy.array(list(csv.reader(open('somefile',"rb"),delimiter=','))).astype('string') #devolop a dict\ r =

我正在尝试用csv文件中的值构造一个字典。假设有10列,我想将第一列设置为键,其余列设置为值。 如果设置为for循环,则字典必须只有一个值。请给我指点路

import csv
import numpy
aname = {}
#loading the file in numpy
result=numpy.array(list(csv.reader(open('somefile',"rb"),delimiter=','))).astype('string')
#devolop a dict\
r = {aname[rows[0]]: rows[1:] for rows in result}
print r[0]
错误如下。
r={aname[rows[0]]:结果中的行的行[1:}


KeyError:'2a9ac84c-3315-5576-4dfd-8bc34072360d | 11937055'

我不完全确定您在这里的意思,但这是否有帮助:

>>> result = [[1, 'a', 'b'], [2, 'c', 'd']]
>>> dict([(row[0], row[1:]) for row in result])
{1: ['a', 'b'], 2: ['c', 'd']}

当你开始工作时,你认为打印
r[0]
能完成什么?我知道,这会引起一个关键错误。但行是检查结果。根据您的想法,将
r={aname[rows[0]]:rows[1:]替换为
x=dict([(row[0],row[1:])替换为
,这样做有效。