все Python 3inspectфункция
inspect.getmodule()
члены и модули
Пытается определить модуль, в котором определён объект; возвращает объект модуля или None.
Синтаксис
inspect.getmodule(object) -> ModuleType | None
Ответ — модуль определения, а не тот, откуда вы импортировали: getmodule(os.path.join) даст posixpath на Linux и macOS и ntpath на Windows. Для числа, строки и функции, созданной через exec(), вернётся None — проверяйте результат перед .__name__. Не путайте с getmodulename(): та принимает путь к файлу и возвращает строку.
Примеры
import inspect, os
def f():
pass
print(inspect.getmodule(f).__name__) # → __main__
print(inspect.getmodule(len).__name__) # → builtins
print(inspect.getmodule(42)) # → None
print(inspect.getmodule(os.path.join).__name__) # → ? posixpath или ntpath
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности