Skip to content

Instantly share code, notes, and snippets.

@JasonCrowe
Created August 12, 2018 14:20
Show Gist options
  • Save JasonCrowe/2c3475346c4a095b9e63dda854be7c62 to your computer and use it in GitHub Desktop.
Save JasonCrowe/2c3475346c4a095b9e63dda854be7c62 to your computer and use it in GitHub Desktop.
Save varied dicts to excel
from xlsxwriter import Workbook
players = [
{'dailyWinners': 3, 'dailyFree': 2, 'user': 'Player1', 'bank': 0.06},
{'dailyWinners': 3, 'dailyFree': 2, 'user': 'Player2', 'bank': 4.0, 'level': 'Gold'},
{'dailyWinners': 1, 'dailyFree': 2, 'user': 'Player3', 'bank': 3.1},
{'dailyWinners': 3, 'dailyFree': 2, 'user': 'Player4', 'bank': 0.32, 'time': 'AM'}
]
def write_excel(dict_objects, filename, sheetname=None):
ordered_list = []
[[ordered_list.append(y) for y in x.keys()] for x in dict_objects]
ordered_list = list(set(ordered_list))
wb=Workbook(filename)
ws=wb.add_worksheet(sheetname)
first_row=0
for header in ordered_list:
col=ordered_list.index(header)
ws.write(first_row, col, header)
row=1
for dict_object in dict_objects:
for _key,_value in dict_object.items():
col=ordered_list.index(_key)
ws.write(row,col,_value)
row+=1
wb.close()
write_excel(players, 'excel.xlsx')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment