__main__ — Среда сценариев верхнего уровня


'__main__' — это имя области, в которой выполняется код верхнего уровня. __name__ модуля устанавливается равным '__main__' при чтении из стандартного ввода, скрипта или интерактивной подсказки.

Модуль может определить, работает ли он в основной области, проверив свой __name__, что позволяет использовать общую идиому для условного выполнения кода в модуле, когда он запускается как сценарий или с python -m, но не когда он импортируется:

if __name__ == "__main__":
    # выполняется только в том случае, если выполняется как сценарий
    main()

Для пакета того же эффекта можно добиться, включив модуль __main__.py, содержимое которого будет выполняться при запуске модуля с -m.