Python Exemplo de função e método principal: entenda def Main()

O que é o Python Função principal?

Python função principal é um ponto de partida de qualquer programa. Quando o programa é executado, o interpretador python executa o código sequencialmente. A função principal é executada somente quando é executada como uma Python programa. Não executará a função principal se for importada como um módulo.

Qual é a função def main() em Python? Para entender isso, considere o seguinte código de exemplo

def main() Exemplo 1

def main():
     print ("Hello World!")
print ("Guru99")

Python Função principal

Aqui, temos duas peças impressas - uma é definida na função principal que é “Hello World!” e o outro é independente, que é “Guru99”. Ao executar a função def main():

  • Apenas “Guru99” é impresso
  • e não o código “Hello World!”

É porque não declaramos a chamada função “se__nome__== “__main__”.

É importante que após definir a função main, você chame o código por if__name__== “__main__” e depois execute o código, só então você obterá a saída “hello world!” no console de programação. Considere o seguinte código

def main() Exemplo 2

def main():
    print("Hello World!")

if __name__ == "__main__":
    main()

print("Guru99")


Guru99 é impresso neste caso.

Python Função principal

Aqui está a explicação,

  • Quando Python interpretador lê um arquivo fonte, ele executará todo o código encontrado nele.
  • Quando Python executa o “arquivo fonte” como o programa principal, ele define a variável especial (__name__) para ter um valor (“__main__”).
  • Quando você executa a função principal em python, ela lê a instrução “if” e verifica se __name__ é igual a __main__.
  • In Python “se__nome__== “__principal__” permite que você execute o Python arquivos como módulos reutilizáveis ​​ou programas independentes.

A variável __name__ e Python Módulo

Para entender a importância da variável __name__ em Python método da função principal, considere o seguinte código:

def main():
    print("hello world!")

if __name__ == "__main__":
    main()

print("Guru99")

print("Value in built variable name is:  ",__name__)

A variável __name__ e Python Módulo

Agora considere que o código é importado como um módulo

import MainFunction

print("done")

A variável __name__ e Python Módulo

Aqui está a explicação do código:


Como C, Python usa == para comparação enquanto = para atribuição. Python intérprete usa a função principal de duas maneiras

corrida direta:

  • __nome__=__principal__
  • if statement == True, e o script em _main_será executado

importar como um módulo

  • __name__= nome do arquivo do módulo
  • if statement == false, e o script em __main__ não será executado

Quando o código for executado, ele verificará o nome do módulo com “if”. Este mecanismo garante que a função principal seja executada apenas como execução direta e não quando importada como um módulo.

Os exemplos acima são Python 3 códigos, se quiser usar Python 2, considere o seguinte código

def main():
  print "Hello World!"
  
if __name__== "__main__":
  main()

print "Guru99"

In Python 3, você não precisa usar if__name. O código a seguir também funciona

def main():
  print("Hello World!")
  
main()
print("Guru99")

Nota: Certifique-se de que após definir a função principal, você deixe algum recuo e não declare o código logo abaixo da função def main(): caso contrário, ocorrerá erro de recuo.