Até aqui definimos uma série de funções dentro do programa, colocando a main() por último. Minha dúvida é: independente de quantas funções estejam antes da main(), o python sempre executa primeiro ela?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Até aqui definimos uma série de funções dentro do programa, colocando a main() por último. Minha dúvida é: independente de quantas funções estejam antes da main(), o python sempre executa primeiro ela?
Bom dia, Arthur! Tudo bem com você?
Diferente de algumas outras linguagens de programação, como C ou Java, o Python não possui uma função main() que é automaticamente reconhecida como o ponto de entrada do programa. Em Python, o código é executado sequencialmente de cima para baixo.
É um acordo de cavalheiros usar uma função main()para organizar melhor o código. No entanto, para que a função main() seja executada, você precisa chamá-la explicitamente no final do seu script. Normalmente, isso é feito com a seguinte estrutura:
def main():
print("Executando a função main")
if __name__ == "__main__":
main()
Nesse exemplo acima, a função main() só será chamada se o script estiver sendo executado diretamente e não importado como um módulo em outro script. O bloco if __name__ == "__main__": é uma maneira de garantir isso. Portanto, não importa quantas funções você tenha definido antes da main(), elas não serão executadas automaticamente a não ser que sejam chamadas dentro da main() ou em outra parte do código.
Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!