Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Entendendo a Função Main do Python: Guia Prático para def main()

O que é a Função Main do Python?

A função main em Python marca o ponto de entrada de um programa. Quando um script é executado diretamente, o interpretador executa o código sequencialmente. Código dentro de def main() roda apenas se o script for o módulo principal, não quando importado em outro lugar.

Vamos percorrer um exemplo claro.

Exemplo 1: Definindo main()

def main():
    print("Olá Mundo!")
    print("Guru99")

Executar este arquivo imprime apenas Guru99. A linha Olá Mundo! permanece dentro de main() e nunca é chamada.

Para executar main() quando o script roda como programa principal, você deve protegê-lo com:

if __name__ == "__main__":
    main()

Agora o script se comporta como esperado.

Exemplo 2: Proteção Adequada

def main():
    print("Olá Mundo!")
if __name__ == "__main__":
    main()
print("Guru99")

Quando você executa este arquivo, o console exibe:
Olá Mundo!
Guru99

Por que isso funciona? O interpretador define a variável especial __name__ como "__main__" quando um arquivo é executado diretamente. A proteção verifica essa condição antes de chamar main().

O Papel de __name__ e Módulos

Entender __name__ é essencial para escrever código reutilizável.

def main():
    print("olá mundo!")
if __name__ == "__main__":
    main()
print("Guru99")
print("Valor na variável embutida name é: ", __name__)

Executando o arquivo diretamente imprime as duas mensagens e __name__ como "__main__". Se você importar este script como módulo:

import funcaomain
print("feito")

você verá apenas feito e __name__ refletirá o nome do módulo, então main() não executa automaticamente.

Em resumo:

Python 3 não requer if __name__ == "__main__": para scripts simples, mas usar a proteção é uma boa prática, especialmente quando o arquivo pode ser reutilizado. Em Python 2, a sintaxe permanece a mesma, mas as declarações print diferem:

def main():
    print "Olá Mundo!"
if __name__ == "__main__":
    main()
print "Guru99"

Em Python 3, você também pode escrever:

def main():
    print("Olá Mundo!")
main()
print("Guru99")

Lembre-se: sempre mantenha a indentação adequada após a linha def main(): para evitar erros.

python

  1. Funções Lambda em Python: Guia Prático para Funções Anônimas
  2. Generators em Python: Iteração Eficiente e Casos de Uso Avançados
  3. Closures em Python Explicados: Como Funções Aninhadas Capturam Variáveis
  4. Dominando Decorators em Python: Aprimore Funções com Técnicas de Especialista
  5. Dominando o Método strip() do Python: Guia Completo e Exemplos Práticos
  6. Python len(): Guia Prático para Medir Comprimento de Objetos
  7. Domine o Método String.find() do Python: Sintaxe, Exemplos e Alternativas
  8. Dominando Funções Lambda em Python: Exemplos Práticos e Boas Práticas
  9. Função round() em Python Explicada com Exemplos Práticos
  10. Dominando a Função map() do Python: Sintaxe, Exemplos e Boas Práticas