相关疑难解决方法(0)

解析.py文件,读取AST,修改它,然后写回修改后的源代码

我想以编程方式编辑python源代码.基本上我想读取一个.py文件,生成AST,然后写回修改过的python源代码(即另一个.py文件).

有一些方法可以使用标准的python模块解析/编译python源代码,例如astcompiler.但是,我不认为它们中的任何一个都支持修改源代码的方法(例如删除此函数声明),然后回写修改python源代码.

更新:我想这样做的原因是我想为python 编写一个Mutation测试库,主要是通过删除语句/表达式,重新运行测试和查看什么中断.

python compiler-construction abstract-syntax-tree

156
推荐指数
9
解决办法
5万
查看次数

将python源代码转换为AST并且注释完整的简单方法

我已经做了很多关于如何捕获保留了注释的python AST的搜索.建议的方法包括使用asttokenize库来完成工作.

根据我的要求,我在使用这些库方面取得了相当大的成功,但我觉得必须有更好的方法.

这个想法源于这样一个事实:lib2to3将python2代码转换为保留了注释的python3代码.此过程也被称为源代码在Python2中 - > AST - > Source-Code-in-Python3(将以简化的方式提出).

我的问题是如何捕获中间 AST?我查看了python-docs,但是没有命令行标志来获取AST.

只是为您提供上下文:我正在尝试将python源代码转换为XML文件(保留注释)以进行进一步处理

python comments abstract-syntax-tree

8
推荐指数
1
解决办法
864
查看次数