存储Python PEP8模块输出

2024-06-01 00:47:46 发布

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

我在代码中使用python的PEP8模块。在

import pep8

pep8_checker = pep8.StyleGuide(format='pylint')

pep8_checker.check_files(paths=['./test.py'])
r = pep8_checker.check_files(paths=['./test.py'])

这是输出:

^{pr2}$

但这个结果打印在终端上,分配给'r'的最终值是8(即错误总数)。在

我想把这些错误存储在一个变量中。我该怎么做?在

编辑: 这是测试.py文件:http://paste.fedoraproject.org/347406/59337502/raw/


Tags: 模块代码pytestimportformatcheck错误
1条回答
网友
1楼 · 发布于 2024-06-01 00:47:46

至少有两种方法可以做到这一点。最简单的方法是将sys.stdout重定向到文本文件,然后在空闲时阅读该文件:

import pep8
import sys

saved_stdout = sys.stdout
sys.stdout = open('pep8.out', 'w')

pep8_checker = pep8.StyleGuide(format='pylint')
pep8_checker.check_files(paths=['./test.py'])
r = pep8_checker.check_files(paths=['./test.py'])

sys.stdout.close()
sys.stdout = saved_stdout

# Now you can read "pep.out" into a variable

或者,可以使用StringIO写入变量:

^{pr2}$

相关问题 更多 >