Python, запустите пакет с помощью `python3.6 -m somepackge.run` - PullRequest
0 голосов
/ 03 ноября 2018

Я хотел бы сделать то же самое, что я могу сделать с python3.6 -m http.server. Я хотел бы запустить мой oneliner таким образом. Как мне это сделать? На данный момент у меня есть:

def run():
    print('Great!')


if __name__ == '__main__':
    run()

Я пытался python3.6 -m fastapi, и у меня есть /Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6: No module named test.__main__; 'test' is a package and cannot be directly executed,

и с python3.6 -m fastapi.run /Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6: No module named test.run

1 Ответ

0 голосов
/ 03 ноября 2018

Вам необходимо определить магический файл, который называется __main__.py в вашем модуле. См. Документы Python 3 на __main__.

Там вы обычно запускаете одну функцию входа main().

Например, посмотрите на pip's или Tox's .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...