2017-04-23 335 views
0

我試圖根據Excel電子表格文件的內容在Python中構建字典。這裏是電子表格的結構化(兩列)一個例子:如何創建Excel電子表格內容的字典?

Col 1  Col 2 
Hello  World 
Hello  Earth 
Hello  Planet 
Hello  Mars 
Hello  Moon 
Hi  Pluto 
Hi  Neptune 
Hi  Jupiter 

如何創建Python中的字典,使數據看起來像這樣:

[{'Hello': 'World', 'Earth', 'Planet', 'Mars', 'Moon'}, {'Hi': 'Pluto', 'Neptune', 'Jupiter'}] 

我試圖每個鍵都包含多個值。

編輯:將.csv文件更改爲「Excel電子表格文件」
EDIT2:在代碼中將括號更改爲{}。對不起,那是一個意外。

+1

這也是不是一個有效的字典結構。你需要'{'和'}',而不是括號。看看使用'pandas.read_excel'至少讀你的文件。 – blacksite

+0

Python無法使用任何內置函數讀取Excel文件,因此對於初學者,您需要使用像「openpyxl」或「xlrd」這樣的第三方Excel文件讀取模塊。 – martineau

回答

1

[{'Hello': 'World', 'Earth', 'Planet', 'Mars', 'Moon'), ('Hi': 'Pluto', 'Neptune', 'Jupiter'}]是無效的python字典。你不能有一個鍵的多個值。

但是,你可以有值作爲項目的列表,這樣

{ 
    'Hello': [ 
     'World', 
     'Earth', 
     'Planet', 
     'Mars', 
     'Moon' 
    ], 
    'Hi': [ 
     'Pluto', 
     'Neptune', 
     'Jupiter' 
    ] 
} 
+0

這正是我正在尋找的。我將如何實現這一目標? –

+0

有一些從excel中讀取的python庫,如「openpyxl」。檢查它的文檔 – Rajesh

0

隨着熊貓,你可以這樣做:

import pandas as pd 
df = pd.read_excel('data1.xlsx') 
dictionary = df.to_dict() 
相關問題