我怀疑这是会导致“你为什么要这样做?”的问题之一。但这里是:
我需要找到一种方法来伪造中定义的类的模块__main__
;IE:
假设我们有一个.py:
class A(object):
name = "a"
pass
和 b.py:
import inspect
import a
class B(object):
__name__ = a.__name__
name = "b"
pass
print inspect.getmodule(B)
调用 b.py 会导致:
<module '__main__' from 'b.py'>
那么,如何在不将其移入 b 的情况下将 A 类的模块设为 b 呢?