pycodestyle检索结果而不打印它们

2024-06-12 03:00:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在python程序中使用pycodestyle

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 

Tags: reportconfigtruestyle标志checkresultspycodestyle
1条回答
网友
1楼 · 发布于 2024-06-12 03:00:17

由于结果是“打印”的,您可以像这样重定向打印:

sys.stdout = open(r'C:/YourResultFilePath/Filename.txt', 'w')  # this is 'w' so the previous file is replaced

我建议保存系统标准输出因此,您可以在代码结束时还原它:

旧标准=系统标准输出你知道吗

然后:

你知道吗系统标准输出=旧标准

相关问题 更多 >