Codes de sortie python

Codes de sortie python
Si vous avez déjà travaillé sur un système UNIX, vous connaissez probablement le concept d'un code de sortie. Si vous ne l'êtes pas, faisons un récapitulatif rapide. Un code de sortie fait référence à un code de sortie spécifique renvoyé par une commande, un script ou un programme lors de l'exécution. Un code unique est utilisé pour indiquer l'état du processus une fois qu'il a terminé l'exécution. Le statut du processus pourrait être réussi, une défaillance ou une autre condition. Par conséquent, le rôle des codes de sortie est d'indiquer comment le processus s'est comporté.

Avec cela à l'écart, explorons les codes de sortie Python, comment ils fonctionnent et comment vous pouvez les utiliser dans vos programmes.

Codes de sortie standard python

Python n'a que deux codes standard, i.e., un et un zéro. Le code de sortie de 0 signifie que le processus a été exécuté et sorti avec succès. Cela signifie qu'aucune erreur n'a été rencontrée. D'un autre côté, un code d'erreur de 1 indique que le processus est sorti avec une défaillance. Jetons un coup d'œil à un programme très simple qui imprime la chaîne «Bienvenue à Linuxhint!".

Print ("Bienvenue à Linuxhint!")

Comme vous pouvez le deviner, si nous exécutons le programme ci-dessus, il exécutera avec succès.

$ python exit_codes.py
Bienvenue à Linuxhint!

Nous pouvons voir que le programme renvoie la sortie souhaitée. Sur Unix Systems, nous pouvons utiliser la commande Echo suivie de la variable d'environnement ?. Cette variable d'environnement vous permet d'obtenir le code de sortie de la dernière commande exécutée.

Dans notre cas, la dernière commande est le programme Python:

$ echo $?
0

Notez que la commande ci-dessus renvoie 0. Cela montre que notre programme Python s'exécute avec succès.

Avez-vous déjà personnalisé votre shell, et il renvoie un symbole rouge si la commande précédente échoue? Oui, il utilise le code de sortie pour ce faire.

Prenons maintenant un autre exemple:

Print ("Bienvenue à Linuxhint!"

Remarquez quelque chose qui ne va pas avec le programme ci-dessus?

Dans l'exemple ci-dessus, le code ci-dessus manque le support de clôture de la fonction d'impression. Par conséquent, si nous exécutons le programme ci-dessus, il échouera et renvoie une erreur.

$ python exit_codes.py
Fichier "/ utilisateurs / nom d'utilisateur / exit_codes.py ", ligne 2
^
Syntaxerror: EOF inattendu pendant l'analyse

Ici, nous pouvons clairement voir que le programme échoue et renvoie une erreur.

Vérifions maintenant le code de sortie.

Echo $?
1

Tu l'as deviné; La commande renvoie un code de sortie 1. Cela montre que le programme précédent a échoué misérablement.

Codes de sortie personnalisés Python - le module sys

Le module SYS est l'un des modules les plus utiles que j'encourage les autres geeks Python est le module sys.

C'est un excellent module qui est la bibliothèque standard de Python intégrée mais offre des fonctionnalités système exceptionnelles.

Assez de louanges; Nous pouvons utiliser l'une des fonctions du module SYS pour créer des codes de sortie personnalisés dans nos programmes Python.

La fonction est appelée sortie () et a une syntaxe comme celle illustrée ci-dessous:

système.sortie ([arg])

Comme vous pouvez le voir, la fonction a une syntaxe relativement simple.

Il vous permet de spécifier le paramètre ARG, qui est facultatif. Il peut s'agir d'un entier ou de tout objet pris en charge.

Si l'argument fourni est un entier zéro ou non, il est considéré comme une exécution réussie. Pour toute autre valeur supérieure à zéro, cela indique une résiliation anormale.

Bien qu'il dépendra du système, la valeur du code de sortie peut aller de 0 à127.

Vous pouvez également passer une chaîne qui sera affichée lorsque le programme sortira.

Prenez l'exemple de programme ci-dessous qui renvoie un code de sortie de 125.

à partir de la sortie d'importation SYS
Imprimer ("Salut!")
sortie (125)
print ("Bienvenue à Linuxhint")

Dans l'exemple de programme ci-dessus, nous commençons par importer la fonction de sortie du module SYS.

Nous utilisons ensuite la déclaration d'impression pour imprimer du texte à l'écran.

Pour la partie importante, nous utilisons la fonction de sortie et passons le code de sortie comme 125.

Remarque: Dès que Python rencontre la fonction de sortie (), il terminera immédiatement le programme et renverra le code de sortie ou le message spécifié.

Nous pouvons le vérifier en exécutant le programme comme:

$ python3 exit_codes.py
Salut!

Nous pouvons voir à partir de la sortie ci-dessus que la deuxième instruction d'impression ne s'exécute pas.

Vérifions le code de sortie comme:

$ echo $?
125

Nous pouvons voir que le code de sortie est 125, comme spécifié dans notre programme.

Considérez l'exemple ci-dessous qui imprime une chaîne au lieu d'un code de sortie.

à partir de la sortie d'importation SYS
Imprimer ("Salut!")
sortie ("programme terminé de façon inattendue")
print ("Bienvenue à Linuxhint")

Dans ce cas, nous utilisons une chaîne littérale comme paramètre ARG à l'intérieur de la fonction. Une fois que nous exécutons le programme:

$ python3 exit_codes.py
Salut!

Programme terminé de façon inattendue

Nous pouvons voir que le programme imprime le message avant la fonction de sortie et celui de la fonction de sortie.

Pouvez-vous deviner quel est le code de sortie du programme ci-dessus? Voyons:

$ echo $?
1

Oui, c'est un. Toute terminaison anormale du programme qui ne fournit pas ses propres codes personnalisés se verra attribuer un code de sortie de 1.

Remarque: utilisez la fonction de sortie lorsque vous devez résilier votre programme immédiatement.

Conclusion

Et avec ça, nous sommes arrivés à la fin de notre tutoriel. Dans cet article, nous avons appris comment fonctionnent les codes de sortie Python et comment créer des codes de sortie personnalisés à l'aide du module SYS.

Codage heureux, et comme toujours, merci d'avoir lu!!