Объясните доступно, простым языком, для чего параметр -m при запуске скриптов из консоли, например: python -m script.py
Из доки понял, что при запуске с параметром-m, в sys.argv[0] , будет абсолютный путь до файла, а без имя запущенного файла.
Скрипт запускается и так и так. В каких случаях используется параметр -m?
Есть модули, это как пакеты, только вместо __init__.py там __main__.py и в отличие от пакетов это уже готовые консольные программы.
Отличия?
Скрипт - один файл,
модуль - множество связанных между собой файлов, лежащих в определённой папке,
выполняющих одну задачу.