Импорт пакетов и запуск тестовых примеров игрушек - PullRequest
0 голосов
/ 24 февраля 2020

В настоящее время я организую свои файлы и папки следующим образом:

main.py
modules
|- __init__.py
|- x.py
|- y.py

Код в каждом файле:

# main.py
from modules.x import X
# modules/x.py
from modules.y import Y
class X():
  # etc...

if __name__ == '__main__':
  # testing of class X here
# modules/y.py
class Y():
  # etc...

Из root Папка, это нормально для запуска python main.py, однако это не хорошо для запуска python modules/x.py, так как он покажет ModuleNotFoundError: No module named 'modules'.

Что я пытаюсь сделать, это проверить, хорошо ли работает класс X Я хочу (используя несколько игрушечных примеров), хотя я все еще могу использовать main.py для запуска реальной задачи с использованием класса X.

Я знаю, что вместо этого могу from .y import Y запустить python modules/x.py, но это означает, что я не могу запустить python main.py.

Есть ли лучший способ сделать это?

...