É possível executar / executar um comando de script bash dentro de um código python?

1

Eu não sou especialista, então estou fazendo minha pergunta aqui. Eu tenho o código C ++ que está usando módulos openCV. Eu preciso deste programa para enviar uma imagem (img1.png) de um código python para ser processado por este código C ++. Eu não escrevi este código e preciso dele para o meu problema específico de pesquisa.

Pode ser executado através do terminal do ubuntu:

$command_ -option /directory/to/set/of/images /home/images/img1.png

A minha pergunta é que é possível executar este comando dentro de um código python? Se sim, você poderia, por favor, orientar?

Ou é possível chamar um bash script dentro de um código python que inclui este comando shell?

Eu realmente aprecio se você me ajudar.

    
por S.EB 02.04.2018 / 23:49

1 resposta

4

O Python tem o módulo os, que permite que você faça exatamente isso.

Por exemplo, você pode ligar:

import os
os.system("ls -l")

Eu recomendo que você crie a string e passe para os.system()

import os
c = "command"
opt = "options"
args = "arguments"
ss = c + opt + args

os.system(ss)

Existem maneiras de ligar o C / C ++ ao python que estão mais envolvidos. Verifique a documentação oficial do Python 2 em ctypes para saber como se integrar diretamente .

Editar: Existe contenção quanto ao uso de os.system ou do módulo de subprocessos. Minha resposta recomenda os.system devido a estar na documentação, mas você certamente deve examinar a documentação dos subprocessos que oferece mais flexibilidade.

    
por DWD 03.04.2018 / 22:07