我通过循环其元素来填充2D字典。这是字典的初始化:
My2Ddict = defaultdict(dict)
row_index = 0
with open('/Path/To/CSVFile.csv', 'rb') as f:
next(f) # skip header line
reader = csv.reader(f, delimiter=',')
for row in reader:
row_index += 1
My2Ddict[row_index]['title'] = row[2]
然后我尝试在'' My2Ddict''中添加新的键值:
for story in My2Ddict:
My2Ddict[story]['title_length'] = len(My2Ddict[story]['title'])
我收到错误:
KeyError: 'title'
但是如果我在循环外运行以下命令,它可以正常工作并返回一个数值:
print "len(My2Ddict[1]['title']): %n" %len(My2Ddict[1]['title'])
我已经检查过,这似乎不是索引问题。不知道如何继续......