gabdrahimovru
@gabdrahimovru
SEO-специалист. Продвижение сайтов в интернете.

Что такое '-m' в командах в работе с Python?

Всем привет, начал изучать язык Python, очень прикольный и понятный.
В связи с этим возник вопрос, по поводу команд в консоли при работе с Python.
В этих командах иногда встречается '-m' например:

python3 -m venv myvenv

зачем нужно вставлять '-m'?

Для тех кто в танке:
хочу понять смысл команд,
модуль устанавливается "pip install имя_модуля"
зачем юзать с -m "python -m pip install имя_модуля" в чем нюансы?
  • Вопрос задан
  • 12743 просмотра
Решения вопроса 1
ri_gilfanov
@ri_gilfanov
Web- and desktop-developer
В последних версиях Ubuntu установленные пакеты Python не прописываются как команды оболочки. А прописывать это ручками не каждый умеет.

Таким образом, привычное:
pyvenv .venv
из коробки работает не во всех операционных системах.

И в гайдах стали писать более универсальное:
python3 -m venv .venv

А что это такое, можно посмотреть в справке к Python:
python3 --help

Где можно увидеть описание опции:
-m mod : run library module as a script (terminates option list)


То есть, запуск установленный библиотеки в качестве скрипта. Хотя, очевидно, не все библиотеки имеют какой-то полезный функционал, который можно так запустить.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
-m <имя модуля>

это параметр, который указывает интерпретатору, выполнить установленный модуль как скрипт.

Например:
python -m SimpleHTTPServer 8000

запустит SimpleHTTPServer который будет ждать запросы на 8000 порту и будет по умолчанию обслуживать файлы из текущего каталога.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы