Python 我如何将dict{key:value}放入其中';s在字典中指定的键,使其在计数值后为{key:{key:value}}

Python 我如何将dict{key:value}放入其中';s在字典中指定的键,使其在计数值后为{key:{key:value}},python,python-2.7,csv,dictionary,Python,Python 2.7,Csv,Dictionary,我有一个csv文件,试图在其中计数行[3]然后将其与行[0] row[0] row[3] 'A01' 'a' 'B02' 'a' 'A01' 'b' 'A01' 'a' 'B02' 'a' 'A01' 'a' 所以最终应该是 {'A01':{a:3, b:1, 'B02':{a,2}} 到目前为止,我有以下代码: d = {'job': {'general_t

我有一个csv文件,试图在其中计数
行[3]
然后将其与
行[0]

 row[0]      row[3]
 'A01'          'a'
 'B02'          'a'
 'A01'          'b'
 'A01'          'a'
 'B02'          'a'
 'A01'          'a'
所以最终应该是

 {'A01':{a:3, b:1, 'B02':{a,2}}
到目前为止,我有以下代码:

d = {'job': {'general_types': 0}}
d['job'] ={}
d['general_types'] ={}
with open("sample.csv", "r") as data1:
    outcome_reader = csv.reader(data1)
    for rows in outcome_reader:
        d['job'].setdefault(rows[0])
        d['general_type'].setdefault(rows[3],0)
        d['general_type'][rows[3]] += 1

然而,目前我收到一个
KeyError:'general_type'

每当您从一个不存在的字典请求密钥时,就会引发一个
KeyError

看起来您将密钥声明为
'general\u type'
,然后通过名称
'general\u type'
请求密钥。请尝试以下方法:

d['general_types'].setdefault(rows[3],0)
d['general_types'][rows[3]] += 1

您在第二个代码示例中缺少了一个右大括号,这使得您很难理解您在寻找什么。但是您的密钥错误是因为您定义了一个密钥
general\u type
,并试图访问单数
general\u type