Почему `python3 -m project` генерирует ошибку, в то время как` python3 __main __. Py` работает? - PullRequest
0 голосов
/ 19 февраля 2020

Почему я получаю ModuleNotFoundError с командой python3 -m project, в то время как вызов python3 __main__.py внутри каталога проекта работает отлично? Вот скриншот с моего терминала: terminal

Об организации файлов: существует только один каталог с именем "memorizeIT" со всеми .py файлами. Импорт, который я использую, просто: import gui. Я пытался добавить __init__.py файл с содержанием:

import subprocess
import sys

path = subprocess.call('pwd', shell=True)
sys.path.append(path)

Это ничего не меняет. Все еще не могу бежать python3 -m memorizeIT. Что такое проблема и как я могу ее решить?

1 Ответ

0 голосов
/ 24 февраля 2020

Я нашел решение использовать python3 -m project_name. В случае выше это была проблема с импортом. Все, что мне нужно было добавить, это from project_name.module import class. В моем коде это будет, например, from memorizeIT.gui import Gui. Теперь запуск python3 __main.__py не работает, но в этом нет необходимости. С самого начала я хотел запустить код как пакет, и теперь это возможно. Вот ссылка на документацию , которая помогла.

...