En tant que développeur Python, vous voudrez peut-être obtenir le code de retour d'un processus pour plusieurs raisons. Par exemple, lors de la gestion des erreurs, il est important de savoir si un sous-processus a été exécuté avec succès ou déclenché une erreur. De plus, le code retourné peut également être utilisé pour suivre l'exécution du programme ou du sous-processus.
Ce blog couvrira:
Méthode 1: Obtenir le code de retour du processus dans Python à l'aide de l'attribut «returncode»
Dans Python, l'attribut «ReturnCode» appartient au module «Sous-processus». Cet attribut contient une valeur entière qui fait référence au statut de sortie d'un sous-processus lors de l'exécution. Plus précisément, la valeur «0» signifie l'exécution réussie du sous-processus, tandis qu'une valeur non nulle indique une condition anormale ou une erreur.
Syntaxe
processus.Code de retourIci, "processus»Représente la fonction pertinente de l'objet de processus du«sous-processus”Module, et le"Code de retour»Est sa valeur de code de retour correspondante.
Exemple
Pour utiliser le «Code de retour”Attribut pour récupérer le code de retour dans l'exécution du sous-processus Python, consultez le code fourni:
à partir de l'exécution d'importation de sous-processusSelon le code donné:
Ici, "0«A été retourné, ce qui indique que le sous-processus spécifié a été exécuté avec succès.
Méthode 2: Obtenir le code de retour du processus dans Python en utilisant la méthode «communiquer ()»
Le "communiquer()«La méthode de Python permet l'interaction avec un processus en y passant d'entrée. Cette méthode produit un tuple qui comprend «std_out»(Sortie standard) au 0ème index et«stderr_data»(Stream d'erreur ou messages) au 1er index. Les valeurs de ces variables associées seront retournées comme «Aucun«Si la sortie standard ou les messages d'erreur n'ont pas été capturés.
Syntaxe
processus.communiquer (entrée = aucun, tempsout = aucun) [n]Dans la syntaxe donnée, "saisir«Est une chaîne d'octets transmise à l'entrée standard du processus,«temps libre«Est le nombre de secondes pour attendre la fin du processus, et«n"Fait référence à l'index, où"0”Sorte la sortie standard et«1»Indique les flux d'erreur.
Exemple
Maintenant, exécutez le code Python suivant pour obtenir le code de retour à l'aide de la méthode communicate ():
sous-processus d'importationIci:
Dans notre cas, le «Utilisateur de B'linuxHint!\ n '”A été affiché comme le code retourné.
Méthode 3: Obtenir le code de retour du processus dans Python à l'aide de la méthode «check_output ()»
Le "check_output ()»La méthode Python exécute une commande en tant que sous-processus et enregistre sa sortie. Cette méthode présente la sortie comme objet d'un octet.
Syntaxe
sous-processus.check_output (args, *, stdin = aucun, stderr = non, shell = false, universal_newlines = false, timeout = non, coding = non, errors = nonIci, "args»Signifie les commandes qui doivent être exécutées, tandis que tous les autres paramètres sont facultatifs.
Exemple
Nous avons passé le «écho”Commande et la chaîne respective du check_output () comme argument. En conséquence, cette méthode renverra la sortie capturée:
processus = sous-processus.check_output (["echo", "Bonjour à partir de Linuxhint!"])Sortir
Conseil bonus: décoder la sortie standard
Python propose également l'installation pour décoder la sortie standard retournée avec le «décoder()" méthode. Dans ce code, nous décoderons la chaîne d'octets en utilisant le «UTF-8»Schéma d'encodage:
imprimer (traiter.Decode ("UTF-8"))Sortir
Il s'agissait d'obtenir le code de retour en python.
Conclusion
Pour obtenir le code de retour d'un processus dans l'exécution du sous-processus Python, utilisez le «attribut de returncode "," communiquer () ", ou" check_output ()" méthode. Le "Code de retour"Renvoie l'attribut"0«En cas d'exécution réussie, et le«communiquer () [0]»Sorties la sortie standard stockée à l'indice zéro. De plus, le «check_output ()»La méthode fonctionne également la même chose. Ce blog a couvert plusieurs méthodes pour obtenir du code de retour dans Python.