Dr. Bobus escribió:
El Fri, 18 Jun 2010 12:27:11 +0000 (GMT)
Luis Garcia Merino <[email protected]> dijo:
Buenas,
una pregunta que igual es un poco tonta, pero no acabo de comprender bien
porque utilizas eval... ¿por qué no le pasas a la función imagen directamente
los arrays en vez de los nombres? O mejor, los nombres y los arrays... Quizás
algo como:
datos = { 'cmasa': cmasa, 'cmovi':cmovi, 'cfago':cfago...}
imagen(ciclo,datos,'Células')
Hola:
La verdad es que quizá me complico la vida, pero el hecho es que las matrices
son muchas más y de antemano no se cuales se van a pasar a la función (sólo se
que 6 ni una más ni una menos). Es por ello que en realidad llamo a la función
pasándole una lista de nombres que previamente se ha generado en otro lado.
Generar un diccionario en lugar de una lista no me pareció mejor. Además (y
esto lo digo desde la ignorancia) pensé que me daría problemas con la memoria.
De hecho en otras partes del programa estoy teniendo errores de memoria que aún
no he conseguido identificar bien.
Pero la pregunta sigue en el aire... ;) ¿debería funcionar el código que he
puesto?
La funcion imagen() no ve las variables que has definido fuera de ella.
Si quieres utilizar strings para nombrar los elementos creo que deberias
utilizar un diccionario, algo como:
dvars = {}
dvars['cmasa'] = ...
dvars['cmovi'] = ...
le agregas el diccionario en los parametros de la funcion imagen y alli
for i, label in enumerate(graficos):
array = dvars[label]
Saludos,
--
Oswaldo Hernández
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/