chart_type не регистрируется в моем операторе if

#python #powerpoint #python-pptx

#python #powerpoint #python-pptx

Вопрос:

Ниже приведен отрывок из моего кода.

 chart = shape.chart
    chart_type = chart.chart_type
    if not chart_type == 'COLUMN_CLUSTERED (51)':
        continue
  

Когда я использую print(chart_type) прямо перед оператором if, один из выходных данных выглядит точно так, как написано здесь: COLUMN_CLUSTERED (51)

Для меня это не имеет смысла

Ответ №1:

Когда print(chart_type) вы получаете str(chart_type) значение (или, возможно repr(chart_type) , значение). Само chart_type значение является значением перечисления, поэтому вам нужно сравнить его с этим элементом перечисления, чтобы этот тест работал:

 from pptx.enum.chart import XL_CHART_TYPE

if chart.chart_type == XL_CHART_TYPE.COLUMN_CLUSTERED:
    # --- do whatever ---