Existem muitos módulos de subprocesso em Python, por exemplo, subprocesso.run (), subprocesso.Popen (), subprocesso.Call (), subprocesso.check_call (), subprocesso.check_output (), etc. Aqui vamos esclarecer o que é o subprocesso.check_output (), qual é a sua função e como ela é usada em um programa Python.
A sintaxe do subprocesso.check_output ()
Todo programa Python possui canais padrão para o processo ou subprocesso. Esses canais são iniciados por Call () e ligados à entrada e saída do programa pai. Em outras palavras, o comando da saída do programa de chamada não pode ser capturado. Portanto, o módulo de subprocesso check_output () no python é usado para capturar a saída do programa de chamada para processamento posterior. A sintaxe do subprocesso.check_output () é o seguinte:
subprocesso.check_output (args, *, stdin = nenhum, stderr = nenhum, shell = false, universal_newlines = false)O argumento 'args' do subprocesso.check_output refere -se ao comando que deve ser executado. Vários comandos podem ser passados para o argumento 'args' como uma string; No entanto, eles devem ser separados por um semicolon ';.'O argumento stdin refere -se ao valor do fluxo de entrada padrão que precisa ser passado um tubo. O argumento do stdout refere -se ao valor da saída gerada a partir do fluxo de saída padrão. O argumento Stderr refere -se ao valor do erro gerado a partir do fluxo de erro padrão.
O argumento do shell refere -se ao parâmetro booleano, que é executado através de um novo ambiente de shell somente quando é verdade. O último argumento, Universal_newlines é outro parâmetro booleano. Se o argumento da Universal_Newlines for verdade. A saída ou o retorno do subprocesso.check_output () é o código do comando.
Aqui está um exemplo para fazer você entender como o módulo check_output () captura a saída do programa de chamada.
Exemplo 1:
Este exemplo simples produzirá o código de saída do comando.
Subprocess de importaçãoAqui está a saída do exemplo dado:
Exemplo 2:
Este exemplo produzirá a saída do programa de chamada.
Subprocess de importaçãoAqui está a saída do código acima:
Exemplo 3:
Este exemplo demonstrará como programas externos de qualquer linguagem de programação como C, C ++, Java, etc., são incorporados em um programa Python usando o subprocesso no Python e como check_output () executará a saída desses programas externos.
Este é um programa C:
int main ()Abaixo está o programa C ++
#incluirEste é o programa Java
Helloworld de classeAqui está o programa Python que executa os programas acima usando o subprocesso em Python
Subprocess de importaçãoAqui está a saída do programa acima:
Observação: Embora o módulo de subprocesso no Python seja independente, esses comandos precisam ser executados no ambiente Linux. Além disso, o shell = true pode se tornar um risco de segurança se uma entrada não confiável for combinada, conforme definido na documentação do Python.
Conclusão:
Este artigo é sobre o subprocesso.Check_Output () Módulo do subprocesso em Python. Aqui temos uma breve discussão sobre subprocessos em Python e depois explicamos o uso do subprocesso.check_output (). Vamos ter uma rápida recapitulação do artigo. O subprocesso em Python cria um novo programa para executar um novo código. Ele permite ao usuário criar um novo aplicativo no programa Python atualmente executado. Existem muitos módulos de subprogramas em Python, e alguns deles são subprocessos.Call (), subprocesso.Popen (), subprocesso.check_call (), subprocesso.check_output ().
O subprocesso.check_output () é usado para obter a saída do programa de chamada no Python. Tem 5 argumentos; args, stdin, stderr, shell, universal_newlines. O argumento args mantém os comandos que devem ser passados como uma string. O stdin, stdout e stderr fornecem o valor de entrada, saída e erro, respectivamente, a partir do fluxo padrão. O Shell e o Universal_Newlines são os parâmetros booleanos que apenas executam os comandos quando o valor do argumento é verdadeiro. O código de retorno do comando é dado como saída do subprocesso.função check_ouput (). Uma sequência de bytes é retornada como saída se o código for zero; caso contrário, chamadoProcesSerror está sendo criado.