Python Funcție principală și metodă Exemplu: înțelegeți def Main()

Ce Este Python Funcția principală?

Python functie principala este punctul de plecare al oricărui program. Când programul este rulat, interpretul Python rulează codul secvenţial. Funcția principală este executată numai atunci când este rulată ca a Python program. Nu va rula funcția principală dacă a fost importată ca modul.

În ce este funcția def main() Python? Pentru a înțelege acest lucru, luați în considerare următorul exemplu de cod

def main() Exemplul 1

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

Python Funcția principală

Aici, avem două bucăți de imprimare - una este definită în funcția principală, care este „Hello World!” iar celălalt este independent, care este „Guru99”. Când rulați funcția def main ():

  • Se tipărește doar „Guru99”.
  • și nu codul „Hello World!”

Pentru că nu am declarat apelul funcția „if__name__== „__main__”.

Este important ca, după definirea funcției principale, să apelați codul prin if__name__== „__main__” și apoi să rulați codul, numai atunci veți obține rezultatul „hello world!” în consola de programare. Luați în considerare următorul cod

def main() Exemplul 2

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

if __name__ == "__main__":
    main()

print("Guru99")


Guru99 este tipărit în acest caz.

Python Funcția principală

Iată explicația,

  • Atunci când Python interpretul citește un fișier sursă, va executa tot codul găsit în el.
  • Atunci când Python rulează „fișierul sursă” ca program principal, setează variabila specială (__name__) să aibă o valoare („__main__”).
  • Când executați funcția principală în python, va citi instrucțiunea „if” și va verifica dacă __name__ este egal cu __main__.
  • In Python „if__name__== „__principal__” vă permite să rulați Python fisiere fie ca module reutilizabile sau programe de sine stătătoare.

Variabila __name__ și Python Module

Pentru a înțelege importanța variabilei __name__ în Python metoda funcției principale, luați în considerare următorul cod:

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

if __name__ == "__main__":
    main()

print("Guru99")

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

Variabila __name__ și Python Module

Acum luați în considerare, codul este importat ca modul

import MainFunction

print("done")

Variabila __name__ și Python Module

Iată explicația codului:


Ca C, Python folosește == pentru comparație în timp ce = pentru atribuire. Python interpretul folosește funcția principală în două moduri

rulare directă:

  • __name__=__main__
  • if statement == True, iar scriptul din _main_va fi executat

import ca modul

  • __name__= numele fișierului modulului
  • if statement == false, iar scriptul din __main__ nu va fi executat

Când codul este executat, acesta va verifica numele modulului cu „dacă”. Acest mecanism asigură că funcția principală este executată doar ca rulare directă, nu atunci când este importată ca modul.

Exemplele de mai sus sunt Python 3 coduri, dacă doriți să utilizați Python 2, vă rugăm să luați în considerare următorul cod

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

print "Guru99"

In Python 3, nu trebuie să utilizați if__name. Funcționează și următorul cod

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

Notă: Asigurați-vă că, după definirea funcției principale, lăsați o indentare și nu declarați codul chiar sub funcția def main(): altfel, va da o eroare de indentare.

Rezumați această postare cu: