¿Cómo capturar la salida de stdout de una llamada de función Python?
Estoy usando una biblioteca de Python que hace algo a un objeto
do_something(my_object)
y lo cambia. Mientras lo hace, imprime algunas estadísticas a la salida estándar, y me gustaría obtener un control sobre esta información. La solución adecuada sería cambiar.do_something()
para devolver la información relevante,
out = do_something(my_object)
pero pasará un tiempo antes que los desarrolladores dedo_something()
llegar a este problema Como una solución, pensé en analizar lo que seado_something()
escribe a stdout.
¿Cómo puedo capturar la salida de la salida estándar entre dos puntos en el código, por ejemplo,
start_capturing()
do_something(my_object)
out = end_capturing()
?