Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python's main-functie begrijpen: Praktische handleiding voor def main()

Wat is de Python main-functie?

De main-functie in Python markeert het startpunt van een programma. Wanneer een script direct wordt uitgevoerd, voert de interpreter code sequentieel uit. Code binnen def main() draait alleen als het script de primaire module is, niet wanneer het elders geïmporteerd wordt.

Laten we doorlopen met een duidelijk voorbeeld.

Voorbeeld 1: main() definiëren

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

Het uitvoeren van dit bestand print alleen Guru99. De Hello World!-regel blijft binnen main() en wordt nooit aangeroepen.

Om main() uit te voeren wanneer het script als hoofdprogramma draait, moet je het bewaken met:

if __name__ == "__main__": main() 

Nu gedraagt het script zich zoals verwacht.

Voorbeeld 2: Correct bewaken

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

Wanneer je dit bestand uitvoert, toont de console:
Hello World!
Guru99

Waarom werkt dit? De interpreter stelt de speciale variabele __name__ in op "__main__" wanneer een bestand direct wordt uitgevoerd. De bewaking controleert die voorwaarde voordat main() wordt aangeroepen.

De rol van __name__ en modules

Het begrijpen van __name__ is essentieel voor het schrijven van herbruikbare code.

def main(): print("hello world!") if __name__ == "__main__": main() print("Guru99") print("Waarde in ingebouwde variabele name is: ", __name__) 

Direct uitvoeren van het bestand print de twee berichten en __name__ als "__main__". Als je dit script importeert als module:

import mainfunctie print("klaar") 

zie je alleen klaar en __name__ zal de modulenaam weerspiegelen, dus main() voert niet automatisch uit.

Kortom:

  • Directe uitvoering: __name__ == "__main__" → main() draait.
  • Importeren als module: __name__ != "__main__" → main() wordt overgeslagen.

Python 3 vereist if __name__ == "__main__": niet voor simpele scripts, maar het gebruik van de bewaking is een best practice, vooral wanneer het bestand herbruikbaar kan zijn. In Python 2 blijft de syntaxis hetzelfde, maar print-statements verschillen:

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

In Python 3 kun je ook schrijven:

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

Onthoud: houd altijd correcte inspringing na de def main():-regel om fouten te voorkomen.

Python

  1. Python Lambda Functies: Een praktische gids voor anonieme functies
  2. Python-generators: efficiënte iteratie en geavanceerde use cases
  3. Python-closures uitgelegd: hoe geneste functies variabelen vangen
  4. Python-decorators beheersen: functies verbeteren met expert-technieken
  5. Python's strip()-methode beheersen: Uitgebreide handleiding & praktische voorbeelden
  6. Python len(): Praktische handleiding voor het meten van objectlengtes
  7. Python's String.find()-methode beheersen: Syntaxis, voorbeelden & alternatieven
  8. Python lambda-functies beheersen: praktische voorbeelden & best practices
  9. Python round()-functie uitgelegd met praktische voorbeelden
  10. Python's map()-functie beheersen: syntaxis, voorbeelden en best practices
  11. Python's yield meesteren: Generator vs Return – Een praktische gids