2017-07-31 118 views
0

我有一個看起來像這樣編寫Python字典CSV

{ 1: ['apple', 'orange'], 
    2: ['fennel', 'basil', 'bay leaves'], 
    3: ['almonds', 'walnuts']} 

我試圖將其導出爲CSV並有表的字典是這樣的:

list_id list_items 
1   apple 
1   orange 
2   fennel 
2   basil 
2   bay leaves 
3   almonds 
3   walnuts 

我不知道該怎麼做的主要事情是如何解析字典中的多個值,以便我有單獨的行。我已經看過csv.writerow(),但文檔不是很有幫助,所以非常感謝示例!

+3

那麼,你嘗試過這麼遠嗎? –

+0

它是令你困擾的CSV或表或導出或字典部分? –

+0

如果全是四個,那麼你可能會以錯誤的方式進行。 –

回答

2

循環遍歷字典的鍵/值,然後通過值循環:

import csv 

D = { 1: ['apple', 'orange'], 
     2: ['fennel', 'basil', 'bay leaves'], 
     3: ['almonds', 'walnuts']} 

# with open('out.csv','w',newline='') as f: # Python 3 
with open('out.csv','wb') as f:    # Python 2 
    w = csv.writer(f) 
    w.writerow(['list_id','list_items']) 
    for key,items in D.items(): 
     for item in items: 
      w.writerow([key,item]) 
+0

在包含Python 3和2的區別方面幹得不錯。 –