Estoy tratando de leer datos de un conjunto de instrucciones de impresión en un programa C++ que se está ejecutando mediante un subproceso.Subproceso de Python con redirección stdout que devuelve un int
código C++:
códigoprintf "height= %.15f \\ntilt = %.15f \(%.15f\)\\ncen_volume= %.15f\\nr_volume= %.15f\\n", height, abs(sin(tilt*pi/180)*ring_OR), abs(tilt), c_vol, r_vol; e; //e acts like a print
Python:
run = subprocess.call('Name', stdout = subprocess.PIPE, env={'LANG':'C++'})
data, error = run.communicate()
Sin embargo en lugar de obtener los datos, todo lo que estoy haciendo es un int, el código de salida, ya sea un error de 0 o un código. Por supuesto, Python me dice "AttributeError: 'int' object no tiene atributo 'communicate'".
¿Cómo obtengo realmente los datos (el printf)?