有没有办法让类装饰器在Google App Engine上工作,仅限于Python 2.5
?
或者让我换个说法:是否可以从它已经执行的同一进程中改变 Python 解析器的行为?例子:
好.py:
alter_python_parser()
import bad
坏的.py:
@decorated
class Foo(object): pass
或者这可能是完全不可能的。
说明:我想使用一个大量使用类装饰器的第三方库,并且不想分叉它并维护我自己的版本。另一种方法是Typhoon App Engine
使用更新的 python 运行我的代码,但我担心谷歌不会在很长一段时间内升级他们的 Python 版本......
EDIT:
如何创建一个新式的导入钩子,它可以即时进行字符串替换并从内存中加载模块?这应该是可能的。如果还没有实现,我会试一试。
但是我怎样才能解析Python 2.6+
代码Python 2.5
呢?是否有仅限 python 的解析器?有什么PYPY
用?