Maison >développement back-end >Tutoriel Python >Que fait « if __name__ == __main__ : » ?

Que fait « if __name__ == __main__ : » ?

anonymity
anonymityoriginal
2019-05-24 14:43:1813844parcourir

Le rôle de "if __name__ == __main__:" : spécifie la fonction de la méthode principale. La fonction principale est démarrée lors de l'exécution du script, mais ne sera pas exécutée lors de l'importation d'autres fichiers.

Que fait « if __name__ == __main__ : » ?

Il existe deux manières d'utiliser un fichier python. La première consiste à l'exécuter directement en tant que script, et la seconde consiste à l'importer dans le script python. d’autres fichiers. Exécution d’appel (réutilisation de module). Par conséquent, la fonction de if name == 'main': est de contrôler le processus d'exécution du code dans ces deux situations. Le code sous if name == 'main': ne peut être exécuté que dans la première situation (c'est-à-dire). le fichier est directement exécuté comme un script). sera exécuté, mais son importation dans d'autres scripts ne sera pas exécutée.

Exemple :

# file one.pydef func():
    print("func() in one.py")
print("top-level in one.py")if __name__ == "__main__":
    print("one.py is being run directly")else:
    print("one.py is being imported into another module")
# file two.pyimport one        # start executing one.pyprint("top-level in two.py")
one.func()if __name__ == "__main__":
    print("two.py is being run directly")else:
    print("two.py is being imported into another module")

Lors de l'exécution de python one.py, le résultat est :

top-level in one.py
one.py is being run directly

Lors de l'exécution de python two.py, le résultat est :

top-level in one.py
one.py is being imported into another module
top-level in one.pyfunc() in one.py
two.py is being run directly

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn