__main__ — Entorno de script del nivel superior


'__main__' es el nombre del ámbito en el que se ejecuta el código de nivel superior. El atributo __name__ de un módulo se establece igual a '__main__' cuando se lee desde una entrada estándar, un script o un prompt interactivo.

Un módulo puede descubrir si se está ejecutando o no en el ámbito principal al verificar su propio __name__, lo cual permite un idioma común para ejecutar código condicionalmente en un modulo cuando este se ejecuta como un script o con python -m pero no cuando este es importado:

if __name__ == "__main__":
    # execute only if run as a script
    main()

Para un paquete, se puede lograr el mismo efecto incluyendo un modulo __main__.py, cuyo contenido se ejecutara cuando el modulo se ejecute con -m.