如何在 Python 中获取导入文件的路径(如果__name__ == __main__ 和 Pytest)



我发现了很多关于导入文件(模块(的答案。

但是,如何从模块中获取导入文件的名称?

我的动机是Pytest'创建一个具有if __name__ == __main__条件的文件(由测试文件导入(,该条件阻止从测试文件执行其代码。

其想法是将条件扩展为以下内容:if __name__ == __main__ or 'test' in __importing_name__

这是Pytest反复出现的问题吗?处理它的最佳做法是什么?

提前感谢您的任何建议!

模块可以通过使用__main__模块来判断是哪个模块导入了它:

import __main__
if hasattr(__main__, '__file__'):
print 'The module %s imported me' % __main__.__file__

相关内容

最新更新