使用pylint检查错误。我的python代码在一个目录中,该目录包含许多其他子文件夹和文件。我以递归方式检查所有文件夹文件以.py结尾。它工作正常。
我的问题是,当我在主目录中运行脚本时,只有第一个python文件获得正确的报告。第二次和完全没有工作。 pylint说
************* Module test.py
F: 1: No module named test.py
***************
Global evaluation
-----------------
Your code has been rated at 0.00/10 (previous run: 0.00/10)
每当我在主目录中运行我的脚本时,只有第一个文件报告是正确的。 pylint没有检查其他文件。 (我在子目录中有近50个python文件。)
以下是我的代码: - [ver:-Python 2.7.2+]
"""
Automated error handling using pylint
1. pylint --generate-rcfile > pylintrc
"""
import sys
import os
if __name__ == '__main__' :
if len(sys.argv) > 1:
os.system(">output.txt")
for r, d, f in os.walk(sys.argv[1]):
for files in f:
if files.endswith(".py"):
os.system("pylint %s >> output.txt" % files)
else:
os.system(">output.txt")
for r, d, f in os.walk('.'):
for files in f:
if files.endswith(".py"):
os.system("pylint %s >> output.txt" % files)
如何正确获取所有(几乎50个文件)文件报告,在第一个文件报告后不存在。这是正确的方法吗? 。提前谢谢。
答案 0 :(得分:1)
您需要在命令行上传递完整路径到pylint,即
for filename in f:
if filename.endswith(".py"):
os.system("pylint %s >> output.txt" % os.path.join(r, filename))
除非你使用有意义的变量名,否则你不会在这个脚本上获得非常好的pylint分数: - )