Что такое '-m' в командах в работе с Python?
В последних версиях Ubuntu установленные пакеты Python не прописываются как команды оболочки. А прописывать это ручками не каждый умеет.
Таким образом, привычное:pyvenv .venv
из коробки работает не во всех операционных системах.
И в гайдах стали писать более универсальное:python3 -m venv .venv
А что это такое, можно посмотреть в справке к Python:python3 --help
Где можно увидеть описание опции:-m mod : run library module as a script (terminates option list)
То есть, запуск установленный библиотеки в качестве скрипта. Хотя, очевидно, не все библиотеки имеют какой-то полезный функционал, который можно так запустить.
-m <имя модуля>
это параметр, который указывает интерпретатору, выполнить установленный модуль как скрипт.
Например:python -m SimpleHTTPServer 8000
запустит SimpleHTTPServer который будет ждать запросы на 8000 порту и будет по умолчанию обслуживать файлы из текущего каталога.