Python импорт в подпапках - PullRequest
2 голосов
/ 27 мая 2020

Прошло некоторое время с тех пор, как я создаю свои классы и импортирую их в свой скрипт, используя

from <folder> import <file>

, а мой file.py выглядит так:

class myClass:
    def __init__():

и и так далее.

Однако всякий раз, когда я хочу использовать этот класс в моем основном скрипте, я должен сделать:

file.myClass()

Это лучший способ, чтобы я мог использовать только «myClass ( ) "?

Ответы [ 2 ]

1 голос
/ 27 мая 2020

Я воссоздал сценарий со следующей структурой каталогов:

.
├── outer.py
└── some_folder
    └── inner.py

Вы пропустили метод self в __init__:

some_folder/inner.py:

class myClass:
    def __init__(self):
        print("myClass is initiated")

Импортируйте класс из файла, если вы хотите напрямую использовать имя класса.

outer.py:

from some_folder.inner import myClass

some_object = myClass()

Вывод:

myClass is initiated
0 голосов
/ 27 мая 2020

Вместо импорта файла вы можете импортировать класс

from package.module import MyClass
...