我試圖讀取格式爲這樣嵌套一個默認的字典中的默認詞典
Number,Letter,Color,
1,a,blue,
1,b,green,
1,c,yellow,
一個CSV文件,並得到了嵌套的字典這樣
{
"1":[
"Letter":["a","b","c"],
"Color":["blue","green","yellow"]
]
}
我能得到的數字,其從csv相關的行,但只要我嘗試和嵌套,我得到AttributeError:'collections.defaultdict'對象沒有屬性'追加',我認爲我大多是關閉到正確的開始
result = co.defaultdict(lambda: co.defaultdict(list))
subresult = co.defaultdict(list)
with open(os.path.join(inputdir,tablelist[i])) as f:
csv_reader = csv.reader(f)
csv_headings = next(csv_reader)
read = csv.DictReader(f, fieldnames=csv_headings)
for line in read:
subresult = {}
for j in range(1,len(csv_headings)):
#result[line[csv_headings[0]]].append(line[csv_headings[j]])
result[line[csv_headings[0]]].append(subresult[csv_headings[j]].append(line[csv_headings[j]]))
名
的字典對象沒有'append'方法,而不是使用'update'方法 – efirvida
那麼,什麼是**子結果[csv_headings [J] **的類型?你沒給我們一個重複的例子。當我嘗試這與我的CSV文件,我在J = 1一鍵搞定的錯誤,這意味着生成的對象,**無**必須** **追加方法。如果這應該是一本字典,那麼你還在吮吸,因爲** **追加是不是一本字典的方法。 – Prune
子結果應符合相應的鍵 –