对于我的应用程序中详细的调试消息,我使用的函数返回一个有用的前缀。考虑以下示例:
import inspect
def get_verbose_prefix():
"""Returns an informative prefix for verbose debug output messages"""
s = inspect.stack()
module_name = inspect.getmodulename(s[1][1])
func_name = s[1][3]
return '%s->%s' % (module_name, func_name)
def awesome_function_name():
print "%s: Doing some awesome stuff right here" % get_verbose_prefix()
if __name__ == '__main__':
awesome_function_name()
这一产出:
test->awesome_function_name: Doing some awesome stuff right here
所以我的问题是:是否有一种简单的方法来检索Python包中的完整模块名?
发布于 2018-02-01 14:57:40
__name__
始终包含模块的全名。(除__main__
当然,主要是这样。)
发布于 2018-02-01 15:54:46
尝试使用__name__
模块的属性。
https://stackoverflow.com/questions/-100007293
复制相似问题