Mypy жалуется на отсутствие дополнительного модуляPython

Программы на Python
Ответить
Anonymous
 Mypy жалуется на отсутствие дополнительного модуля

Сообщение Anonymous »

У меня есть модуль (назовем его optional_module), который я хочу импортировать по желанию, поскольку он может как присутствовать, так и отсутствовать. Теперь я делаю это следующим простым способом:
try:
import optional_module

except ImportError:
... # Working around the module

else:
... # Using the module

Но mypy выдает ошибку в случае отсутствия optional_module:
main.py:2: error: Cannot find implementation or library stub for module named
"optional_module" [import-not-found]
import optional_module
^
main.py:2: note: See https://mypy.readthedocs.io/en/stable/r ... ng-imports

Да, я просмотрел ссылку, предложенную mypy, но она не помогла мне найти ответ.
Конечно, я мог бы просто убрать эту проверку, добавив «# type: ignore» после строки импорта, но это также подавит все полезные проверки содержимого модуля в случае, если он существует. Так что это слишком грубо.
Есть ли более деликатный и правильный способ заставить mypy перестать беспокоиться и полюбить мой условный импорт?
P.S. Вот мои флаги конфигурации mypy:
[mypy]
disallow_untyped_defs = True
check_untyped_defs = True
disallow_any_unimported = True
warn_return_any = True
warn_unreachable = True
warn_redundant_casts = True
warn_unused_ignores = True
pretty = True


Подробнее здесь: https://stackoverflow.com/questions/798 ... nal-module
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»