2012-01-02 77 views
2

我正在开发一个开源项目,在该项目中,我实现了搜索“打印”语句 以及在生产环境中不必要的其他语句,并且可以创建一个 错误。 但我不想麻烦用户,如果有一个打印语句分配或打印 单词在文档字符串或评论。所以我试图找出那些有机会得到执行的python 的部分。我怎样才能做到这一点 ?在python文件中查找有执行机会的语句

回答

2

使用ast模块和NodeVisitor来分析静态程序的代码。这样你就不会遇到文档或评论问题。

1

对于Python 2.6或更高版本,您可以使用模块。阅读代码(以字符串形式,使用ast.parse()创建该代码的抽象语法树,然后遍历代码寻找对象,然后将它们转换回文件名,行数元组