Abdullah Leghari - 27 days ago 11

Python Question

How to check to which module a function belongs?

Like,

`check_module(sqrt)`

Would return

`math`

Answer Source

Functions have a `__module__`

attribute:

```
>>> from math import sqrt
>>> sqrt.__module__
'math'
```

You can use the `inspect.getmodule()`

function to get the actual module object for a given object:

```
>>> 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'>
```

`inspect.getmodule()`

works for more than just functions and classes; it'll go through some length to find a module for a given object, based on the metadata on that object.