Группировка импорта из подкаталогов

Допустим, у меня есть приложение django, в котором я использую папки и подпапки для организации моих моделей:

app
    models
        __init__.py
        accounts
            user.py
            profile.py
        social
            facebook.py
            twitter.py
            linkedin.py
    admin.py
    apps.py
    urls.py
    views.py

Мой __init__.py файл выглядит следующим образом:

from .accounts.user import User
from .accounts.profile import Profile

from .social.facebook import Facebook
from .social.twitter import Twitter
from .social.linkedin import LinkedIn

Есть ли способ сгруппировать эти импорты вместе или сделать код короче?

Например (очевидно, не работает)

from . import *

# or

from .accounts import *
from .social import *

Нет. Пакет, содержащий модуль, не обязательно будет знать что-либо о содержимом модуля, так что в вашем случае accounts ничего не знает о классе User в accounts.user. Нет никакого общего способа группировать вещи больше, чем то, что вы уже делаете.

Вернуться на верх