posible generar una variable dinámica?
Frecuentes
Visto 71 equipos
1
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
1 Respuestas
1
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 python function variables multiprocessing or haz tu propia pregunta.
Es posible generar variables en tiempo de ejecución, pero se desaconseja. Usa una lista. - Fred Foo