posible generar una variable dinámica?

Quiero llamar a una función, que inicia un subproceso, así:

processrrd = Popen(args1, stdout=PIPE, stderr=PIPE, env={'LANG':'de_DE@euro','TZ':'Europe/Berlin'})
outputrrd = processrrd.communicate()
(output, error) = outputrrd

Ahora quiero usar multiprocessing.pool para paralizar al trabajador. El problema es que la variable outputrrd se sobrescribe con el último Popen. Entonces, ¿es posible crear una variable específica (processrrd), como name1_processrrd?

Saludos. Stefan

UDPATE: probé este, pero la salida de los procesos es la misma....:

processrrd = []
processrrd.append((hostgroup+'_processrrd'))
print processrrd
    for name in processrrd:
        print name
        name = Popen(args1, stdout=PIPE, stderr=PIPE, env={'LANG':'de_DE@euro','TZ':'Europe/Berlin'})
        outputrrd = name.communicate()
    (output, error) = outputrrd

preguntado el 31 de julio de 12 a las 15:07

Es posible generar variables en tiempo de ejecución, pero se desaconseja. Usa una lista. -

1 Respuestas

Sin siquiera considerar si multiprocessing le brinda mejores enfoques (supongo que sí, pero no lo sé muy bien), sería mejor que almacenara cada identificador en algún tipo de estructura de datos, como un dict o un list, p.ej,

# TODO Use name and key that works for you.
my_processes['de_DE@euro'] = Popen(args1, stdout=PIPE, stderr=PIPE, env={'LANG':'de_DE@euro','TZ':'Europe/Berlin'})

Respondido 31 Jul 12, 15:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.