2017-07-19 16 views
1

私はPythonで辞書をとり、シートのヘッダーセクションにキーが表示され、値が列にあるExcelワークシートに配置しようとしています。私は近づいています。私はちょうど小さなものを見逃していて、ここで私のコードです。注意私は道を使用する多くの輸入にPythonの辞書キーからExcelを作成するにはどうすればいいですか

import os 
import re 
import openpyxl 
from openpyxl.utils import get_column_letter, column_index_from_string 
import xlsxwriter 
import pprint 
from openpyxl.workbook import Workbook 
from openpyxl.worksheet.copier import WorksheetCopy 


workbook = xlsxwriter.Workbook('dicExcel.xlsx') 
worksheet = workbook.add_worksheet() 

d = {'a':['Alpha','Bata','Gamma'], 'b':['1','2','3'], 'c':['1.0','2.0','3.0']} 
row = 0 
col = 1 

for key in d.keys(): 
row += 1 
worksheet.write(row, col, key) 
for item in d[key]: 
    worksheet.write(row, col + 1, item) 
    row += 1 

workbook.close() 

答えて

0

1つのオプションは、あなたがあまりにも多くの輸入を必要としません、pandasパッケージを使用することです。

import pandas as pd 

d = {'a':['Alpha','Bata','Gamma'], 'b':['1','2','3'], 'c':['1.0','2.0','3.0']} 

df = pd.DataFrame(d) 

DFは次のようになります。

 a b c 
0 Alpha 1 1.0 
1 Bata 2 2.0 
2 Gamma 3 3.0 

バックExcelファイルに内のデータフレームを書き込むには:

df.to_excel("Path to write Excel File + File Name") 
1

私は、これはあなたがやろうとしているものだと思う。

import xlsxwriter 

workbook = xlsxwriter.Workbook('dicExcel.xlsx') 
worksheet = workbook.add_worksheet() 

d = {'a':['Alpha','Bata','Gamma'], 'b':['1','2','3'], 'c':['1.0','2.0','3.0']} 
row = 0 
col = 0 

for key in d.keys(): 
    row = 0 
    worksheet.write(row, col, key) 
    row += 1 
    for item in d[key]: 
     worksheet.write(row, col, item) 
     row += 1 
    col += 1 

workbook.close() 

これは、このfo rmat:

a  c  b 
Alpha 1.0 1 
Bata 2.0 2 
Gamma 3.0 3 

これはあなたが望むものですか?

+0

正確に、私の質問に答える時間を取ってくれてありがとう。すてきな一日を。 –

関連する問題