Хорошая идея или хорошая практика программирования для проверки зависимостей модуля в файле __init__.py
для модуля?__init__.py и импортные зависимости
Так что, если у меня есть что-то в моем __init__.py
файл следующим образом:
import imp
modules = set(["numpy", "scipy.spatial.distance"])
for m in modules:
try:
imp.find_module(m)
except ImportError:
print("Missing dependency: " + str(m))
Это хорошая практика, или есть более вещий способ справиться с этим?
Если эти модули необходимы для вашего пакета, вы должны создать исключение. Если они не являются существенными, то выставляйте некоторые флаги функций и/или делаете исключения при попытке использовать функции, которые их требуют, и/или поднимите предупреждения. 'print()' для людей, пакеты Python для кода Python. –
Как вы думаете, преимущество в том, чтобы сделать это, просто разрешив каждому модулю прямой «импорт»? – deceze
Ах да, поэтому я должен на самом деле вызвать фатальное исключение. Конечно. Спасибо! – Luca