Проблема с модулем openpyxl.styles в python, невозможно установить атрибут шрифта - PullRequest
0 голосов
/ 04 октября 2018

Возникла проблема с использованием функции openpyxl.styles.Font (), я вижу, что в документации так же учат, поэтому не знаю, что могло измениться.

>>> import openpyxl
>>> from openpyxl.styles import Font

>>> wb = openpyxl.Workbook()
>>> sheet = wb.get_sheet_by_name('Sheet')

>>> font_style = Font(sz=30, i=True)

>>> sheet['A1'].font = font_style

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    sheet['A1'].font = font_style
AttributeError: can't set attribute

У меня естьтакже пробовал это так:

sheet['A1'].font = Font(size=30, italic=True)
sheet['A1'].font = Font(sz=30, i=True)

При получении этого сообщения об ошибке, когда я пытаюсь установить ячейку в стиль шрифта, кажется, ничего не работает.

Любые предложения приветствуются, спасибо.

1 Ответ

0 голосов
/ 04 октября 2018

Я думаю, вы используете старую версию openpyxl, потому что я не могу воспроизвести вашу проблему с версией v2.5.8.

Тем не менее, есть кое-что любопытное: вы пытаетесь получить "«Лист» из недавно созданной рабочей тетради.Таким образом, этот лист не существует.

Вы должны попробовать:

import openpyxl

from openpyxl.styles import Font

wb = openpyxl.Workbook()
sheet = wb.create_sheet('Sheet')
font_style = Font(sz=30, i=True)
sheet['A1'].font = font_style

Это создаст новый лист с именем "Лист" и определит шрифт первой ячейки.

...