__main__
— Среда сценариев верхнего уровня¶
'__main__'
— это имя области, в которой выполняется код верхнего уровня.
__name__ модуля устанавливается равным '__main__'
при чтении из
стандартного ввода, скрипта или интерактивной подсказки.
Модуль может определить, работает ли он в основной области, проверив свой
__name__
, что позволяет использовать общую идиому для условного
выполнения кода в модуле, когда он запускается как сценарий или с python
-m
, но не когда он импортируется:
if __name__ == "__main__":
# выполняется только в том случае, если выполняется как сценарий
main()
Для пакета того же эффекта можно добиться, включив модуль __main__.py
,
содержимое которого будет выполняться при запуске модуля с -m
.