如何检查定义函数的模块?蟒蛇

Abd*_*ari 1 python python-3.x

如何检查函数属于哪个模块?喜欢,

check_module(sqrt)
Run Code Online (Sandbox Code Playgroud)

会回来math等等,如果有的话.

Mar*_*ers 9

函数有一个__module__属性:

>>> from math import sqrt
>>> sqrt.__module__
'math'
Run Code Online (Sandbox Code Playgroud)

您可以使用该inspect.getmodule()函数获取给定对象的实际模块对象:

>>> from inspect import getmodule
>>> getmodule(sqrt)
<module 'math' from '/Users/mj/Development/Library/buildout.python/python-3.4/lib/python3.4/lib-dynload/math.so'>
Run Code Online (Sandbox Code Playgroud)

inspect.getmodule()不仅仅适用于函数和类; 根据该对象的元数据,它会经过一段时间来查找给定对象的模块.