从Python的ast重建一个新的抽象语法树
项目描述
这是什么?
此模块的目的是为pychecker、pyreverse、pylint等类似项目提供Python源代码的通用基础表示。实际上,此库的开发主要受pylint需求驱动。
它提供了一种兼容的表示,来源于_ast模块。通过递归遍历AST并构建扩展ast(让我们称其为astng;),它重新构建了内置_ast模块生成的树。新的节点类具有针对不同用途的额外方法和属性。它们包括对静态推理和局部名称作用域的支持。此外,astng通过检查活动对象来构建部分树。
主要模块包括
bases、node_classes和scoped_nodes包含树中不同类型节点的类。
manager包含一个高级对象,用于从源文件和活动对象获取astng树。它维护之前构建的树的缓存,以实现快速访问。
安装
解压tarball,进入创建的目录,然后运行
python setup.py install
有关安装选项,请参阅
python setup.py install --help
如果您有任何问题,请向python-project@lists.logilab.org邮件列表发送邮件以获取支持。有关订阅信息和存档,请参阅http://lists.logilab.org/mailman/listinfo/python-projects。
测试
测试在“test”子目录中。要一次性启动整个测试套件,您可以使用来自logilab-common的“pytest”实用程序(只需在此目录中键入“pytest”即可)或如果运行python >= 2.7,使用discover等。
python -m unittest discover -p "unittest*.py"
项目详细信息
关闭
logilab-astng-0.24.3.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e08fba39689e5a4dfa175749874811e516f019656544874defe05154073f69d4 |
|
MD5 | f0dd5dee1d5053939da174e1bfe69388 |
|
BLAKE2b-256 | 39ab3ecd06a186cfc503d9554fdf858e9a320c747cb76432d02e0e802f9450f0 |