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

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

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-01 15:58:30309parcourir

Why Doesn't My Python

Comprendre le problème « la fonction main() ne s'exécute pas »

Considérez le script Python suivant :

<code class="python">#! /usr/bin/python

def main():
    print("boo")</code>

Lorsqu'il est exécuté dans Python 3.3, ce script ne parvient silencieusement à produire aucune sortie. Cela peut être déroutant.

Dépannage de la cause profonde

Le problème réside dans le fait que la définition d'une fonction en Python n'exécute pas automatiquement son code. Le code de la fonction main() doit être explicitement appelé.

Dans ce script particulier, la fonction main() n'est jamais appelée. Par conséquent, l'instruction print qu'il contient reste inexécutée.

Solution : appeler la fonction

Pour résoudre le problème, il vous suffit d'appeler la fonction main() après l'avoir défini. Voici la version corrigée du script :

<code class="python">def main():
    print("boo")

main()  # Call the function explicitly</code>

Maintenant, lorsque vous exécutez le script, il devrait correctement imprimer "boo" sur la console.

Remarques supplémentaires :

  • L'exemple de script fourni utilise la ligne shebang # ! /usr/bin/python pour spécifier l'interpréteur Python à utiliser lors de l'exécution du script.
  • La commande de script chmod 775 définit les autorisations pour le fichier de script, le rendant exécutable.
  • Le ./ La commande script exécute le fichier de script comme un programme normal.

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