Из различных способов импорта кода, есть ли способы, которые предпочтительнее использовать, по сравнению с другими? Эта ссылка 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
файлы пусты), какой метод импорта следует выбрать и почему?