Добрый день! С Питоном столкнулся в первый раз. Задача следующая:
Есть скрипт, который выгружает отчет с Заббикс в эксель. Отчет выглядит следующим образом:

Стоит задача: добавить символ звездочка "*" в начале названии определенных объектов. К примеру, *Алаш 34/1 (рынок «Биг Шанхай»)/Биг Шанхай пролет 2. Список объектов статичный и меняться не будет. Если в отчете около 800 объектов, то, примерно на 40 из них надо добавить звездочки.
Так как опыта с Питоном у меня нуль, прошу помочь с правильным подходом к решению данной задачи. Пробовал разные варианты из поиска в гугл, не заработало.
Прилагаю кусок кода, где ведется запись в файл эксель:
Дополнительная информация:
Есть скрипт, который выгружает отчет с Заббикс в эксель. Отчет выглядит следующим образом:

Стоит задача: добавить символ звездочка "*" в начале названии определенных объектов. К примеру, *Алаш 34/1 (рынок «Биг Шанхай»)/Биг Шанхай пролет 2. Список объектов статичный и меняться не будет. Если в отчете около 800 объектов, то, примерно на 40 из них надо добавить звездочки.
Так как опыта с Питоном у меня нуль, прошу помочь с правильным подходом к решению данной задачи. Пробовал разные варианты из поиска в гугл, не заработало.
Прилагаю кусок кода, где ведется запись в файл эксель:
Python:
book_consol = copy(open_workbook('consol_report.xls', formatting_info=True))
sheet_consol = book_consol.get_sheet(0)
sheet_consol._cell_overwrite_ok = True
setOutCell(sheet_consol, 4, 1, week1_name)
setOutCell(sheet_consol, 5, 1, week2_name)
setOutCell(sheet_consol, 6, 1, week3_name)
setOutCell(sheet_consol, 7, 1, week4_name)
setOutCell(sheet_consol, 8, 1, full_period_name)
for gr in grs2:
#Получение номера группы из имени
#nubmer_obj = re.findall("\d\d\d", gr["name"])[0]
#Количество дней
#print("Количество дней = ", len(d_lu_group_reports[counter]))
w = [0]*4
for d in gr["days"]:
if d<=6:
w[0]=w[0]+1
elif d<=13:
w[1]=w[1]+1
elif d<=20:
w[2]=w[2]+1
else:
w[3]=w[3]+1
sheet_consol.write(row_number_col, 0, row_number)
sheet_consol.write(row_number_col, 1, 'ОН')
#sheet_consol.write(row_number_col, 2, nubmer_obj)
sheet_consol.write(row_number_col, 3, gr["name"][26:])
sheet_consol.write(row_number_col, 4, w[0])
sheet_consol.write(row_number_col, 5, w[1])
sheet_consol.write(row_number_col, 6, w[2])
sheet_consol.write(row_number_col, 7, w[3])
sheet_consol.write(row_number_col, 8, xlwt.Formula(f'E{row_number_col + 1} + F{row_number_col + 1} + G{row_number_col + 1} + H{row_number_col + 1}'))
counter += 1
row_number += 1
row_number_col += 1
filename = year + '{:02}'.format(month) + '_consol_report_on.xls'
book_consol.save(filename)
print("Сохранение данных завершено")
logging.info("Сохранение данных завершено")
Дополнительная информация:
- sheet_consol.write(row_number_col, 3, gr["name"][26:]) - тут как раз таки пишутся названия объектов, в начале которых надо ставить звездочки
- Операционная система: CentOS Linux release 7.6.1810 (Core)
- Версия Python: 2.7.5
- Вывод команды pip list:
Package Version
------------- ---------
certifi 2019.6.16
chardet 3.0.4
idna 2.8
pip 18.1
py-postgresql 1.2.1
py-zabbix 1.1.5
pyzabbix 0.7.5
requests 2.22.0
setuptools 39.2.0
urllib3 1.25.3
xlrd 1.2.0
XlsxWriter 1.3.3
xlutils 2.0.0
xlwt 1.3.0