pycodestyle извлекает результаты, не печатая их
Я пытаюсь использовать pycodestyle
в программе Python:
from pycodestyle import StyleGuide, StandardReport
CONFIG_FILE = 'setup.cfg'
def check_pycodestyle():
style_guide = StyleGuide(config_file=CONFIG_FILE, quiet=True)
# style_guide = StyleGuide(config_file=CONFIG_FILE, reporter=StandardReport, quiet=True)
report = style_guide.check_files(paths='./')
К сожалению, я не нашел способ получить результаты в виде простого возвращаемого значения. При использовании quiet=True
флаг, ничего не печатается автоматически, но возвращаемый отчет BaseReport
и, кажется, не содержит фактических результатов, а просто рассчитывать, сколько total_errors
,
Опуская quiet
флаг, то результаты автоматически распечатываются.
Есть ли функция для получения результатов, а не распечатывать их?
РЕДАКТИРОВАТЬ: при использовании report.get_file_results()
Я получаю следующие результаты:
С quiet=True
:
0
Без quiet
:
<prints the results>
0
0 ответов
Поскольку результаты печатаются, вы можете просто перенаправить печать следующим образом:
sys.stdout = open(r'C:/YourResultFilePath/Filename.txt', 'w') # this is 'w' so the previous file is replaced
Я бы рекомендовал сохранить sys.stdout, чтобы вы могли восстановить его в конце вашего кода:
old_stdout = sys.stdout
Потом:
sys.stdout = old_stdout