用于python的ast unparser
astunparse-noparen的Python项目详细描述
一个用于python的ast unparser。
这是python中找到的unparse的分解版本 源代码分发;在python 2的demo/parser和tools/parser下 在python 3中。
基本示例:
import inspect import ast import astunparse # get back the source code astunparse.unparse(ast.parse(inspect.getsource(ast))) # get a pretty-printed dump of the AST astunparse.dump(ast.parse(inspect.getsource(ast)))
这个库是与Python2.6到Python3.5兼容的单一源代码。它 是由python核心开发人员编写的;我只是合并了python 2.7 以及python 3.5源代码和测试套件,并添加了一个包装器。这个保理 out是提供一个支持两个版本的库实现。
另外还有一个漂亮的打印dump实用函数。
测试套件既可以运行特定的测试,也可以往返于 标准库。
扩展和替代方案
类似的项目包括:
这些都不是标准库的往返路线,也没有几个基本的 在test_unparse测试套件中进行测试。
这个库使用成熟的核心维护代码,而不是试图修补 现有的图书馆。unparse和test_unparse模块 在PSF许可证下。
扩展名包括:
- typed-astunparse: extends astunparse to support type annotations.
功能
- 断开python ast的连接。
- 漂亮的指纹。
变更日志
下面是对ast unparser的最新更改。
1.5.0-2017-02-05
- python 3.6兼容性
- 错误修复:更正argparser选项类型
1.4.0-2016-06-24
- 支持async关键字
- 支持断开“交互式”和“表达式”节点的连接
1.3.0-2016-01-17
- python 3.5兼容性
1.2.0-2014-04-03
- python 2.6到3.4的兼容性
- 添加了一个新函数dump,以返回一个漂亮的打印版本 在AST中。运行^{tt8}时也可以使用$ 作为--dump参数。
1.1.0-2014-04-01
unparse将返回ast的源代码。它很漂亮 功能齐全,往返stdlib,与 Python2.7和Python3.4。
运行python -m astunparse将打印往返源 对于作为参数给定的任何python文件。