Экспорт значений списка списков словаря Python в лист Excel - PullRequest
0 голосов
/ 04 мая 2018

Ниже приведен пример словаря.

dict1 = {'X':[['a','1'], ['b','3'], ['c','2']],
         'Y':[['a','8'], ['b','13']],
         'Z':[['a','5'], ['b','7'], ['f','8']]}

Я пытаюсь получить приведенный ниже вывод в листе Excel с помощью модуля xlwt.

X    a       1
     b       3
     c       2

Y    a       8
     b      13

Z    a       5
     b       7
     f       8

1 Ответ

0 голосов
/ 05 мая 2018

dict1 не сохранит свой порядок при записи ключей / значений в файл Excel, но одним из вариантов может быть помещение содержимого в OrderedDict , а затем запись каждой записи в строки, столбцы в файл excel:

import collections
# save order in dict1 to OrderedDict 
od = collections.OrderedDict(sorted(d.items(), key=lambda t: t[0]))

row = 0
for key in od.iterkeys():
    # write the key
    sheet.write(row, 0, key)
    for values in od[key]:
        for column, value in enumerate(values):
        # write each of this key's values in this row's columns    
        sheet.write(row, column+1, value)
        row += 1

Кроме пустых строк между клавишами, он соответствует желаемому результату: enter image description here

...