PyChecker是Python代码的静态分析工具,它能够帮助查找Python代码的bug,而且能够对代码的复杂度和格式等提出警告。
PyChecker可以工作在多种方式之下。首先,PyChecker会导入所检查文件中包含的模块,检查导入是否正确,同时检查文件中的函数、类和方法等。
PyChecker可以检查出来的问题有如下几种:
点击下载:PyChecker模块下载链接
解压后进入文件夹,找到setup.py文件,在当前文件夹内进入DOS界面,运行python setup.py install,
报错,SyntaxError: invalid syntax
编辑器打开setup.py文件,检查代码,发现代码为py2版本,本人使用python版本为python3.5,修改python2部分代码为python3格式,修改coding为‘utf-8’,保存,重新运行python setup.py install,
成功运行,在运行结果出现多次错误信息,检查发现还是由于版本不同造成的,
进入Python35\Lib\site-packages\pychecker目录下,一一找到报错的py文件,打开,修改错误部分,保存,
进入python交互模式,导入PyChecker模块,成功,OK,搞定!
运行,又报错,检查错误信息,发现是py2的模块和py3的不同继续修改
msgs.py", line 11, in
Config.py文件中, line 27, in get_warning_levels
if (not (not (obj is not WarningClass) or not isinstance(obj, types.ClassType))中types.ClassType替换为type
Stack.py文件, line 74, in Item def setStringType(self, value = types.StringType)中types.StringType替换为bytes
python.py", line 19, types.IntType 替换为int;line 24, types.BufferType替换为memoryview;
其他的types替换省略(都是从py2替换到py3)
line110 has_key替换为__contains__,
.......(需要替换的太多了,弃用pychecker,改pylint吧)
参考资料:PyChecker:Python代码静态分析工具
python2 与 python3的区别