擅长:python、mysql、java
<p>同时inspect.getmodule工作很好,我确实找错了地方,我找到了一个稍微好一点的解决方案:</p>
<pre><code>def callers_module():
module_name = inspect.currentframe().f_back.f_globals["__name__"]
return sys.modules[module_name]
</code></pre>
<p>它仍然在使用检查电流帧(与完全相同的sys.\u getframe相比,我更喜欢它),但它不调用inspect的模块文件名映射(在inspect.getmodule). 在</p>
<p>此外,这个问题启发了一个有趣的方法<a href="http://bitbucket.org/kniht/scraps/src/tip/python/export.py" rel="noreferrer">manage __all__</a>:</p>
^{pr2}$