Exemplo de método e função principal do Python:entenda def Main()
O que é a função principal do Python?
Função principal do Python é um ponto de partida de qualquer programa. Quando o programa é executado, o interpretador python executa o código sequencialmente. A função principal é executada apenas quando é executada como um programa Python. Ele não executará a função principal se for importado como um módulo.
O que é 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")
Aqui, temos dois pedaços de impressão - um é definido dentro da função principal que é "Hello World!" e o outro é independente, que é o “Guru99”. Quando você executa a função def main():
- Apenas "Guru99" é impresso
- e não o código “Hello World!”
É porque não declaramos a chamada função “if__name__==“__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ó assim 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.
Aqui está a explicação,
- Quando o interpretador Python lê um arquivo fonte, ele executa todo o código encontrado nele.
- Quando o Python executa o “arquivo de origem” como o programa principal, ele define a variável especial (__name__) para ter um valor (“__main__”).
- Quando você executa a função main em python, ela lê a instrução “if” e verifica se __name__ é igual a __main__.
- Em Python “if__name__==“__main__” permite que você execute os arquivos Python como módulos reutilizáveis ou programas independentes.
A variável __name__ e o módulo Python
Para entender a importância da variável __name__ no método da função principal do Python, considere o seguinte código:
def main(): print("hello world!") if __name__ == "__main__": main() print("Guru99") print("Value in built variable name is: ",__name__)
Agora considere, o código é importado como um módulo
import MainFunction print("done")
Aqui está a explicação do código:
Como C, Python usa ==para comparação enquanto =para atribuição. O interpretador Python usa a função main de duas maneiras
execução direta:
- __name__=__main__
- if statement ==True, e o script em _main_will 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”. Esse 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 códigos Python 3, se você quiser usar Python 2, considere o seguinte código
def main(): print "Hello World!" if __name__== "__main__": main() print "Guru99"
No 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")
Observação: Certifique-se de que depois de definir a função main, você deixe algum recuo e não declare o código logo abaixo da função def main():caso contrário, dará erro de recuo.
python
- Função anônima/Lambda do Python
- Geradores Python
- Fechamentos Python
- Decoradores Python
- Função Python String strip () com EXEMPLO
- Comprimento da string do Python | Exemplo do método len()
- Método Python String find() com exemplos
- Funções do Python Lambda com EXEMPLOS
- Função Python round() com EXEMPLOS
- Função Python map() com EXEMPLOS