29.4. __main__ — Ambiente de Script de Nível Superior


'__main__' é o nome do escopo no qual o código de nível mais alto executa. O '__name__' do módulo é definido como '__main__' quando for lido a partir de uma entrada padrão, um script ou uma tela de comando interativa.

Um módulo pode verificar se está ou não rodando no escopo principal, verificando seu próprio __name__, o que permite expressões para executar condicionalmente o código em um módulo quando esse executa como um script ou com python -m mas não quando esse é importado:

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

Para um pacote (package), o mesmo resultado pode ser obtido incluindo um módulo __main__.py , o conteúdo desse será executado quando o módulo for executado com -m