Esistono molti moduli di sottoprocesso in Python, ad esempio il sottoprocesso.run (), sottoprocesso.Popen (), sottoprocesso.Call (), sottoprocesso.check_call (), sottoprocess.check_output (), ecc. Qui illumineremo qual è il sottoprocesso.check_output (), qual è la sua funzione e come viene utilizzata in un programma Python.
La sintassi del sottoprocesso.check_output ()
Ogni programma Python ha canali standard per il processo o il sottoprocesso. Questi canali vengono avviati da Call () e vincolati all'ingresso e all'output del programma principale. In altre parole, il comando dell'output del programma chiamante non può essere catturato. Quindi, il modulo sottoprocesso check_output () in Python viene utilizzato per catturare l'output del programma di chiamata per la successiva elaborazione. La sintassi del sottoprocesso.check_output () è il seguente:
sottoprocesso.check_output (args, *, stdin = nessuno, stderr = nessuno, shell = false, universal_newlines = false)L'argomento "args" del sottoprocesso.check_output si riferisce al comando che deve essere eseguito. Più comandi possono essere passati all'argomento "Args" come stringa; Tuttavia, devono essere separati da un punto e virgola;.'L'argomento stdin si riferisce al valore del flusso di input standard che deve essere superato un tubo. L'argomento stdout si riferisce al valore dell'output generato dal flusso di output standard. L'argomento Stderr si riferisce al valore dell'errore generato dal flusso di errore standard.
L'argomento Shell si riferisce al parametro booleano, che viene eseguito attraverso un nuovo ambiente di shell solo quando è vero. L'ultimo argomento, Universal_Newlines è un altro parametro booleano. Se l'argomento Universal_NewLines è vero, il file che contiene STDOUT e STDERR si aprirà in modalità Newline Universal. L'output o il ritorno del sottoprocesso.check_output () è il codice del comando.
Ecco un esempio per farti capire come il modulo check_output () cattura l'output del programma di chiamata.
Esempio 1:
Questo semplice esempio produrrà il codice di output del comando.
Sottoprocesso di importazioneEcco l'output del dato esempio:
Esempio 2:
Questo esempio produrrà l'output del programma di chiamata.
Sottoprocesso di importazioneEcco l'output del codice sopra:
Esempio 3:
Questo esempio dimostrerà come i programmi esterni di qualsiasi linguaggio di programmazione come C, C ++, Java, ecc., sono incorporati in un programma Python utilizzando il sottoprocesso in Python e come Check_output () eseguirà l'output di tali programmi esterni.
Questo è un programma C:
int main ()Di seguito è riportato il programma C ++
#includereQuesto è il programma Java
Classe HelloworldEcco il programma Python che esegue i programmi di cui sopra utilizzando il sottoprocesso in Python
Sottoprocesso di importazioneEcco l'output del programma sopra:
Nota: Anche se il modulo di sottoprocesso in Python è indipendente da OS, questi comandi devono preferibilmente essere eseguiti nell'ambiente Linux. Inoltre, la shell = true può diventare un pericolo per la sicurezza se viene combinato un input non attendibile, come definito nella documentazione di Python.
Conclusione:
Questo articolo parla del sottoprocesso.check_output () modulo del sottoprocesso in Python. Qui abbiamo una breve discussione sui sottoprocessi in Python e poi spieghiamo l'uso del sottoprocesso.check_output (). Facciamo un rapido riepilogo dell'articolo. Il sottoprocesso in Python crea un nuovo programma per eseguire un nuovo codice in esso. Consente all'utente di creare una nuova applicazione all'interno del programma Python attualmente in esecuzione. Esistono molti moduli di sottoprogrammi in Python e alcuni di essi sono sottoprocessi.Call (), sottoprocesso.Popen (), sottoprocesso.check_call (), sottoprocess.check_output ().
Il sottoprocesso.check_output () viene utilizzato per ottenere l'output del programma di chiamata in Python. Ha 5 argomenti; Args, Stdin, Stderr, Shell, Universal_Newlines. L'argomento Args contiene i comandi che devono essere superati come una stringa. STDIN, STDOUT e STDERR forniscono rispettivamente il valore di input, output e errore. Le linee di shell e universal_ sono i parametri booleani che eseguono i comandi solo quando il valore dell'argomento è vero. Il codice di ritorno del comando è dato come output del sottoprocesso.funzione check_ouput (). Una stringa di byte viene restituita come output se il codice è zero; Altrimenti, chiamatoprocesserror viene sollevato.