Не могу записать в файл Excel из Python

Я пытаюсь записать в файл Excel, используя Python и модуль xlrd, со следующим кодом:

Table = [ 'baseMax - 1cm', 'baseMin- 1cm',
          'baseMax - 5cm', 'baseMin - 5cm',
          'baseMax - 15cm' 'baseMin - 15cm'
        ]
new_base = { 'baseMax - 1cm': [], 'baseMax - 5cm': [],
             'baseMax - 15cm': [], 'baseMin- 1cm': [],
             'baseMin - 5cm': [], 'baseMin - 15cm': []
           }
HeadName = 'Base Calculation'
for i in Table:
    base_stats.write(ROW, 0, HeadName + ' ' + i + ' - ')
    base_stats_stats.write(ROW, 1, new_base[i])
    ROW = ROW+1
    ROW = ROW+1

Когда я запускаю этот код, я получаю сообщение об ошибке new_base[i], Я не уверен, что точно понимаю, о чем эта ошибка. Кажется, это связано с параметрами, которые я передаю, но я не совсем понимаю.

raise Exception("Unexpected data type %r" % type(label))
  Exception: Unexpected data type <type 'list'>

1 ответ

Я предполагаю, что ваши имена переменных и форматирование правильны в вашем реальном коде.

Когда вы используете write метод вы не даете ему правильные параметры.

Следующий прототип метода найден в документации модуля xlwt: write(r, c, label="", style=Style.default_style)

label Параметр, по-видимому, требует строки. Когда вы ссылаетесь new_base[i] вы получаете пустой список:

'baseXxx - Ncm':[]

Таким образом, когда write Метод ищет строку и вместо этого получает []Это исключение.

Другие вопросы по тегам