Из различных способов импорта кода существуют ли какие-то способы, которые предпочтительнее использовать, по сравнению с другими? Эта ссылка http://effbot.org/zone/import-confusion.htm вкратце что
from foo.bar import MyClass
не является предпочтительным способом импорта MyClass при нормальных обстоятельствах или если вы не знаете, что делаете. (Скорее, лучший способ:
import foo.bar as foobaralias
а затем в коде для доступа к MyClass используйте
foobaralias.MyClass
)
Короче говоря, похоже, что ссылка, указанная выше, говорит, что обычно лучше импортировать все из модуля, а не только части модуля.
Однако эта статья, с которой я связан, действительно старая.
Я также слышал, что лучше, по крайней мере в контексте проектов Django, вместо этого импортировать только классы, которые вы хотите использовать, а не весь модуль. Было сказано, что эта форма помогает избежать круговых ошибок импорта или, по крайней мере, делает систему импорта django менее хрупкой. Было указано, что собственный код Django, похоже, предпочитает "от x import y" над "import x".
Предполагая, что проект, над которым я работаю, не использует каких-либо специальных функций __init__.py
... (все наши файлы __init__.py
пустые), какой метод импорта я должен использовать, и почему?