У мене є така структура каталогу:
source
source_1.py
__init__.py
source1.py має клас джерела
source1.py
class Source(object):
pass
Я можу імпортувати за допомогою цього
>>> from source.source1 import Source
>>> Source
<class "source.source1.Source">
Однак при спробі імпорту за допомогою наведеного нижче методу це не вдається.
>>> from source import *
>>> source1.Source
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name "source1" is not defined
Будь ласка, дайте мені знати, як ми можемо використовувати другий імпорт?
Відповіді:
0 для відповіді № 1Для імпорту з пакету (на відміну від імпорту з модуля) потрібно вказати, що *
засоби. Для цього, в __init__.py
додати такий рядок:
__all__ = ["source1"]
Перегляньте документацію Python для Імпорт * з пакету.