`__init__.py` 导入文件中未使用的多个模块

The `__init__.py` import multiple modules while they are not utilized within the file

我正在阅读/django/forms/__init__.py

"""
Django validation and HTML form handling.
"""

from django.core.exceptions import ValidationError  # NOQA
from django.forms.boundfield import *  # NOQA
from django.forms.fields import *  # NOQA
from django.forms.forms import *  # NOQA
from django.forms.formsets import *  # NOQA
from django.forms.models import *  # NOQA
from django.forms.widgets import *  # NOQA

__init__.py 导入多个未在文件中使用的模块。

我假设他们可能被住在同一个目录中的其他人雇用,Django 是如何做到这一点的?

The __init__.py import multiple modules

s/modules/names/ - from somemodule import somename 语法公开了 somename 名称,而不是 somemodule.

while they are not utilized within the files. I assume they might be employed by others lived in the same dir

实际上这是一种称为 "facade" 的设计模式 - forms 包隐藏了它的内部实现(其中定义了子模块/子包)所以

1/ 用户可以直接从 django.forms 中导入他们需要的东西,而不必关心底层模块/子包的层次结构,

2/ 维护人员可以在不破坏客户端代码的情况下重新组织底层模块/子包层次结构。

How Django achieve this?

这不是 Django 特有的,它只是普通的 Python。阅读 Python 关于模块和包的文档。