El 25 de octubre de 2010 19:25, Jose Caballero <jcaballero....@gmail.com>escribió:
> > > El 25 de octubre de 2010 19:20, Ricardo Cárdenes Medina < > ricardo.carde...@gmail.com> escribió: > > >> >> 2010/10/26 Ricardo Cárdenes Medina <ricardo.carde...@gmail.com> >> >> >>> >>> 2010/10/26 Jose Caballero <jcaballero....@gmail.com> >>> >>> >>> >>>> Nope. Me imprime todo el output al final, no a medida que se va >>>> generando. >>>> Por ejemplo, imaginemos que el command es "./cmd.py" >>>> donde cmd.py es algo como esto (esto es un ejemplo tonto para probar) >>>> >>>> >>> Hay dos problemas aquí. Por un lado está el de la lectura, que se >>> resolvería con algo como lo que te ha comentado Arnau. Por otro lado está el >>> de la producción del texto, que *TAMBIÉN* se ve afectada por los búfers. >>> >>> Si quieres que la cosa funcione y tienes control sobre el lado que >>> produce el texto, asegúrate de volcar (flush) el búfer de stdout tras cada >>> bloque de texto que quieras enviar. >>> >>> >> Nota, en tu ejemplo anterior sería tan sencillo como: >> >> #!/usr/bin/env python >> >> import sys >> import time >> for i in range(3): >> print time.time() >> sys.stdout.flush() >> time.sleep(3) >> >> >> > > Muchísimas gracias. > Lo acabo de probar y parece que funciona. No conocía flush(). > Ya estoy más cerca de resolver mi problema. Gracias por la ayuda. > > Ya estoy más cerca de resolver mi problema => me queda por averiguar como capturar el return code del comando ejecutado con Popen()
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/