Я заметил, что Flask использовал Werkzeug до __import__
модуля, и я был немного смущен. Я пошел и проверил документы на нем и увидел, что это, кажется, дает вам больше контроля как-то с точки зрения того, где он ищет модуль, но я не уверен точно как и у меня нет идеи, как он отличается от importlib.import_module
,import vs __import __() vs importlib.import_module()?
Невероятная вещь в примере Werkzeug заключается в том, что она просто говорит __import__(import_name)
, поэтому я не вижу, как это отличается от того, как просто используется оператор import
, так как он игнорирует дополнительные дополнительные параметры.
Может ли кто-нибудь объяснить? Я смотрел на других людей, которые задавали аналогичные вопросы на SO ранее, но они были не очень четко сформулированы вопросы, и ответы не касались этого вообще.
Используйте '' __import__' где вы хотите импортировать модуль, имя которого известно лишь в runtime'. Помимо этого ...как вы сказали, это дает вам больше мощности по сравнению с импортом. –
Если память обслуживается правильно, видеоролик David Beasely при импорте, в видео он упоминает, что WerkZeug перегрузил импорт по какой-то причине. – Carel