Ver Mensaje Individual
  #6 (permalink)  
Antiguo 21/09/2011, 19:49
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Recoger la variable de un bucle infinito

Ok a pesar de que el pipeline se puede ajustar muy bien a lo que tu pides también puedes hacer uso de Threads.

Ejemplo de pipeline:
Código Python:
Ver original
  1. #A.py
  2. from time import sleep
  3. import sys
  4.  
  5. for i in xrange(10):
  6.     print i
  7.     sys.stdout.flush()
  8.     sleep(1)

Código Python:
Ver original
  1. #B.py
  2. try:
  3.     while 1:
  4.         a = raw_input()
  5.         print int(a) * 2#Simular alguna operacion
  6. except Exception, e:
  7.     print "Fin del archivo"

Al momento de ejecutarlo en consola (implicando conocimiento previo en linea de comandos)
Solo haces un:
Código:
$ python A.py | python B.py
Ahora si por alguna razón no puedes modificar A.py para meterle el sys.stdout.flush() entonces puedes hacer esto. Ejemplo:
Código Python:
Ver original
  1. #A.py
  2. from time import sleep
  3.  
  4. for i in xrange(10):
  5.     print i
  6.     sleep(1)

Código Python:
Ver original
  1. #B.py
  2. try:
  3.     while 1:
  4.         a = raw_input()
  5.         print int(a) * 2#Simular alguna operacion
  6. except Exception, e:
  7.     print "Fin del archivo"

Código:
$ python -u A.py | python B.py