user3541631 user3541631 - 29 days ago 7
Python Question

Write dictionary values in an excel file

I have a dictionary with multiple values for each key. I add the values using the following code:

d.setdefault(key, []).append(values)


The key value correspondence looks like this:

a -el1,el2,el3
b -el1,el2
c -el1


I need to loop thru the dictionary and write in an excel file:

Column 1 Column 2
a el1
el2
el3
b el1
el2
c el1


For writing in the excel file I use xlsxwriter. I need help looping separately thru the dictionary, because after writing the key and I don't need to write it again until I finish all the corresponding values.

Answer

It seems like you want something like this:

import xlsxwriter

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

d = {'a':['e1','e2','e3'], 'b':['e1','e2'], 'c':['e1']}
row = 0
col = 0

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()
Comments