Numpy 用Pyflakes进行静态分析

我们将对NumPy代码库中的部分代码进行静态分析。为此我们需要先用Git从代码库中签出(check out)代码,然后用Pyflakes对其中的部分代码进行静态分析。

具体步骤

  1. 签出代码。

为了签出NumPy代码,我们需要用到Git。怎样安装Git不在本书的讨论范围之内。用来从代码库中提取代码的Git命令如下。

git clone git://github.com/numpy/numpy.git numpy

也可以选择从网址https://github.com/numpy/numpy下载zip格式的源代码。

  1. 对代码进行分析。

完成上一步骤后,我们应该已经创建了一个numpy目录,里面包括了全部的NumPy代码。进入该目录,然后运行如下命令。

$ pyflakes *.py
pavement.py:71: redefinition of unused 'md5' from line 69
pavement.py:88: redefinition of unused 'GIT_REVISION' from line 86
pavement.py:314: 'virtualenv' imported but unused
pavement.py:315: local variable 'e' is assigned to but never used
pavement.py:380: local variable 'sdir' is assigned to but never used
pavement.py:381: local variable 'bdir' is assigned to but never used
pavement.py:536: local variable 'st' is assigned to but never used
setup.py:21: 're' imported but unused
setup.py:27: redefinition of unused 'builtins' from line 25
setup.py:124: redefinition of unused 'GIT_REVISION' from line 118
setupegg.py:17: 'setup' imported but unused
setupscons.py:61: 'numpy' imported but unused
setupscons.py:64: 'numscons' imported but unused
setupsconsegg.py:6: 'setup' imported but unused

上述命令对当前目录下所有的Python脚本进行了分析,分析其代码风格,检查其违反PEP-8编码规范的地方。你也可以选择只对单个文件进行分析。

攻略小结

如你所见,用Pyflakes分析代码风格和寻找违反PEP-8编码规范的地方是相当简单的。Pyflakes的另一优势是分析速度快,但它能报告的错误类型是相当有限的。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程