读取/重写/编写Python ASTs
项目描述
astor旨在通过AST轻松操作Python源代码。
有一些其他类似库,但astor专注于以下领域
将AST(抽象语法树)来回转换成Python [1]
修改后的AST不需要行号、上下文等信息,否则可以直接编译,以实现来回转换。
生成的代码易于阅读,就像代码一样。
可以使用astor.rtrip工具来回转换两个不同的源代码树,以比较功能差异(例如,在PEP8编辑后)。
输出AST的格式化打印
比来回转换后的代码更难阅读,但更能准确地了解发生了什么。
比内置AST模块的输出更容易阅读。
非递归树遍历
有时你可能需要一个递归的树遍历(astor支持从树的任何节点开始),但有时你不需要这样做。astor不需要你明确访问子节点,除非你想这样做。
你可以在访问节点子节点之前添加代码,以及/或者
你可以在访问节点子节点之后添加代码,以及/或者
你可以在执行代码的同时阻止节点子节点的访问(并且可以选择通过递归调用自己来访问它们)
编写基于对象名称和/或属性名称访问树的函数
享受轻松访问父节点进行树重写的功能
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
astor-0.8.1.tar.gz (35.1 kB 查看哈希值)
构建分布
astor-0.8.1-py2.py3-none-any.whl (27.5 kB 查看哈希值)