Ищите слово в строке, затем пишите строку в Excel, найдя слово другим шрифтом - PullRequest
0 голосов
/ 08 июня 2018

Я экспортировал с сервера sql информацию, касающуюся большого количества отчетов.Столбцами Excel являются ReportPath, DataSourceName, DataSetName и Command Text.

Затем я создал скрипт python, который преобразует xls в кадре данных pandas и ищет определенные слова в столбце Command Text блока данных.Код:

import pandas as pd

FILE = 'C:\\Users\filepath\filename.xlsx'


def xls_to_df(csvfile):
    df = pd.read_excel(csvfile,names =['ReportPath','DataSourceName','DataSetName','Command Text'])
    table = "Customer"
    flt = df[df['Command Text'].str.contains(table,na=False)]
    return flt


res = xls_to_df(FILE)
print(res)

Чего я хочу добиться, так это отсканировать столбец «Текст команды», содержащий SQL-запросы, найти определенные ключевые слова и выделить их, используя цвета, жирный шрифт или любое другое возможное.

Я думаю, что панды здесь на самом деле не нужны, поэтому, возможно, мои усилия не очень актуальны.В идеале скрипт должен просто проходить по колонке, менять шрифты на ключевые слова и сохранять файл.

1 Ответ

0 голосов
/ 08 июня 2018

Когда вы читаете Excel в Pandas, вы можете манипулировать только текстом.К сожалению, Excel не поддерживает расширенное форматирование текста (полужирный, курсив, цвета и т. Д.) В качестве функций.Поэтому, если вы импортируете свои данные в python только для выделения ячеек, содержащих эту строку, вы можете просто сделать это в excel: https://www.extendoffice.com/documents/excel/4584-excel-conditional-formatting-if-cell-contains-partial-text.html

...