python中编译器和ast模块的区别



编译器模块已在python 2.6中弃用。有人知道这背后的原因是什么吗?最后一个模块是否直接更换?python 3k是否支持ast模块?

compiler模块是用Python编写的Python编译器。它慢得可怕,维护起来很痛苦。

ast模块是一个更智能的解决方案:它提供了对导入模块时使用的实际编译器的Python级访问。因为它只是内置编译器的一个可见API,所以它不会去任何地方。

ast不是compiler的直接替代品(即api不同),但它肯定涵盖了许多相同的用例。

是的,ast模块取代了compiler模块。你说的"会得到支持"是什么意思?Python 3已经发布很多年了,当然ast也是其标准库的一部分。

删除的原因可以在这里找到。

最新更新