Som Python -utvikler kan det være lurt å få en prosesss returkode av flere grunner. For eksempel, mens håndteringsfeil, er det viktig å vite om en underprosess ble utført eller utløste noen feil med hell. Videre kan den returnerte koden også brukes til å spore programmet eller utførelsen av underprosesser.
Denne bloggen vil dekke:
Metode 1: Få returkode fra prosess i Python ved å bruke "returkode" attributt
I Python tilhører "ReturnCode" -attributtet "underprosessen" -modulen. Denne attributtet inneholder en heltallverdi som refererer til utgangsstatus for en underprosess ved utførelse. Mer spesifikt betyr verdien “0” den vellykkede utførelsen av underprosessen, mens en ikke-null verdi indikerer en unormal tilstand eller en feil.
Syntaks
prosess.ReturnCodeHer, “prosess”Representerer prosessobjektets relevante funksjon av“underprosess”Modul, og“ReturnCode”Er den tilsvarende returkodeverdien.
Eksempel
Å bruke “ReturnCode”Attributt for å hente returkoden i Python underprosessutførelse, sjekk ut den medfølgende koden:
fra importkjøring av underprosesserI henhold til den gitte koden:
Her, “0”Er blitt returnert, noe som indikerer at den spesifiserte underprosessen er utført med hell.
Metode 2: Få returkode fra prosess i Python ved å bruke "kommunisere ()" -metode
“kommunisere()”Metode i Python tillater samspillet med en prosess ved å gi innspill til den. Denne metoden sender ut en tuple som omfatter “std_out”(Standardutgang) ved 0th -indeksen og“stderr_data”(Feilstrøm eller meldinger) på 1. indeks. Verdiene for disse tilknyttede variablene vil bli returnert som “Ingen”Hvis standardutgangen eller feilmeldingene ikke er fanget.
Syntaks
prosess.Kommuniser (input = ingen, timeout = ingen) [n]I den gitte syntaksen, “inngang”Er en byte -streng som sendes til prosessens standardinngang,”pause”Er antall sekunder å vente på prosessen med prosessen, og“n”Refererer til indeks, hvor“0”Gir standardutgangen, og“1”Angir feilstrømmene.
Eksempel
Utfør nå følgende Python -kode for å få returkoden ved hjelp av Communicate () -metoden:
Importer underprosessHer:
I vårt tilfelle "B'linuxhint -bruker!\ n '”Har blitt vist som den returnerte koden.
Metode 3: Få returkode fra prosess i Python ved å bruke "check_output ()" -metoden
“CHECK_OUTPUT ()”Python -metoden kjører en kommando som en underprosess og lagrer utgangen. Denne metoden presenterer utgangen som en byte -objekt.
Syntaks
underprosess.Check_output (args, *, stdin = ingen, stderr = ingen, skall = falsk, universal_newlines = falsk, timeout = ingen, koding = ingen, feil = ingen)Her, “Args”Begynner kommandoene som må utføres, mens alle de andre parametrene er valgfrie.
Eksempel
Vi har passert “ekko”Kommando og den respektive strengen til Check_output () som et argument. Resultatet at denne metoden vil returnere den fangede utgangen:
prosess = underprosess.Check_output (["Echo", "Hei fra Linuxhint!"])Produksjon
Bonustips: Avkode standardutgangen
Python tilbyr også anlegget for å avkode den returnerte standardutgangen med "dekode()”Metode. I denne koden vil vi avkode bytestrengen som bruker "UTF-8”Kodingsskjema:
trykk (prosess.Dekode ("UTF-8"))Produksjon
Det handlet om å få returkoden i Python.
Konklusjon
For å få returkoden fra en prosess i Python underprosessutførelse, bruk "returncode ”attributt,“ kommunisere () ”, eller“ check_output ()”Metode. “ReturnCode”Attributt returnerer”0”Ved vellykket utførelse, og“kommunisere () [0]”Utgir standardutgangen som er lagret ved nullindeksen. Dessuten "CHECK_OUTPUT ()”Metoden fungerer også den samme. Denne bloggen dekket flere metoder for å få returkode i Python.