Maison > développement back-end > Tutoriel Python > Pourquoi ma fonction Python `main()` ne s'exécute-t-elle pas ?

Pourquoi ma fonction Python `main()` ne s'exécute-t-elle pas ?

Patricia Arquette
Libérer: 2024-12-20 04:33:09
original
599 Les gens l'ont consulté

Why Isn't My Python `main()` Function Running?

Pourquoi la fonction main() ne s'exécute-t-elle pas ? (Comprendre le point d'entrée d'un script Python)

En Python, l'exécution d'un script commence au point d'entrée, qui est généralement la fonction main(). Cependant, les développeurs rencontrent parfois des situations dans lesquelles la fonction main() n'est pas exécutée, ce qui n'entraîne aucune sortie visible. Pour résoudre ce problème, il est crucial de saisir le concept de point d'entrée d'un script Python.

Dans l'exemple de code donné :

# Import necessary module
import sys

# Define a function to read random data
def random(size=16):
    return open(r"C:\Users\ravishankarv\Documents\Python\key.txt").read(size)

# Define the main function
def main():
    key = random(13)
    print(key)
Copier après la connexion

Malgré la fonction main(), le script échoue à exécuter car la fonction n'est pas explicitement appelée. Pour résoudre ce problème, vous pouvez ajouter la ligne suivante comme dernière ligne du script :

main()
Copier après la connexion

Cette ligne appelle explicitement la fonction main(), assurant son exécution et sa sortie.

Alternativement , vous pouvez utiliser le code suivant :

if __name__ == "__main__":
    main()
Copier après la connexion

Ce code vérifie si le module est exécuté directement (non importé). Si tel est le cas, il appelle la fonction main(). Cette approche est recommandée car elle empêche l'exécution de la fonction main() lorsque le module est importé en tant que bibliothèque.

En suivant ces directives, vous pouvez vous assurer que vos scripts Python s'exécutent correctement, avec la fonction main() fonction servant de point d’entrée fiable.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal