python – 有没有办法从导入的模块中获取“父”模块的名称?

前端之家收集整理的这篇文章主要介绍了python – 有没有办法从导入的模块中获取“父”模块的名称?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我很好奇是否可以访问导入其他模块的父模块的名称.

例如,如果我有一个模块(moduleA)并且父模块是foo.py,它将被导入到模块中,那么moduleA是否可以知道foo的位置?

ModuleA

def print_parent_module(): 
    os.path.asbpath(#somehow access filename of parent module) 

foo.py

import moduleA 

print moduleA.print_parent_module()
>>> "foo.py"
最佳答案
我遇到了类似的问题.你可以使用__name__:

parent_name = '.'.join(__name__.split('.')[:-1])

或者,如果您尝试直接访问模块(不是OP的问题但相关),请参阅Is there a way to access parent modules in Python中的答案

猜你在找的Python相关文章