El 19 de febrero de 2015, 14:31, Juan Pablo Fernandez Gutierrez < jpfernan...@udem.edu.co> escribió:
> Gracias Chema. > > > > Por ahora, lo estoy usando una vez y es por el hecho de que creo una lista > con x=range(n), pero esta es un array y al usarlo como índice me genera > error. > > > > Existe un comando que crea una lista de 0 a n-1 similar al range del numpy? > Nos estás despistando un poco. Tú mismo te estás respondiendo: range(n) crea una lista de enteros de 0 a n-1, tanto en numpy como en python. Antes, dejar muy claro que una lista NO es un array. En una lista puedes tener elementos de cualquier tipo, incluso otras listas. En un array, todos los elementos son del mismo tipo. Al decir que te da error al usar la lista x=range(n), ¿cómo la estás usando?¿error de qué tipo? Sin ver tu código, sospecho de que te estás liando con las matrices multidimensionales. En python no existen, aunque en numpy sí. Ponnos el fragmento del código que te falla y, sobre todo, el texto del error que te da. > > > Juan Pablo Fernández Gutiérrez > > > > *De:* Python-es [mailto:python-es-bounces+jpfernandez= > udem.edu...@python.org] *En nombre de *Chema Cortes > *Enviado el:* jueves, 19 de febrero de 2015 07:41 a.m. > *Para:* La lista de python en castellano > *Asunto:* Re: [Python-es] Cómo convertir una lista flotante a una lista > de enteros. > > > > > > El 18 de febrero de 2015, 22:19, Luis Fernando Barrera < > luisferna...@informind.com> escribió: > > A mí me gusta usar siempre las comprensiones, así ya sé que el resultado > es una lista. > > > > Y map es muy rápido y legible para aplicar funciones sobre un iterable. > > > > > > Aunque "map" es un método utilizado en programación funcional, en python > es simplemente una función. Al contrario de otros lenguajes, es muy > ilegible cuando tienes que encadenar varios maps y filtros seguidos. En > estos casos, la alternativa de usar compresiones de listas es más > recomendable. > > > > En el caso que nos ocupa, se puede conseguir una versión más elegante con > el uso del iterador "enumerate": > > > > items = (D[i,int(u)] for (i,u) in enumerate(x)) > > Sería lo recomendado si sólo la vas a usar una vez después. Si prefieres > lista o set bastaría con cambiar los paréntesis: > > lista = [...] > > conjunto = {...} > > > > También puedes incluir esta expresión directamente en algunos cálculos > sencillos: > > suma = sum(...) > > maximo = max(...) > > minimo = min(...) > > O cálculos más complejos encadenando iteradores: > > numeros_positivos = sum(1 for z in ( D[i,int(u)] for (i,u) in enumerate(x) > ) if z > 0) > > > > O mezclando listas con "zip": > > zip( (...), (...), (...) ) > > y posteriormente operar para, por ejemplo, sumar sus elementos: > > > > s = [sum(z) for z in zip( (...),(...),(...)) ] > > > > > > > > El 18 de febrero de 2015, 1:42 p. m., lasizoillo<lasizoi...@gmail.com> > escribió: > > > > Esto es un poco off-topic y solo por curiosidad. ¿Por qué esa mezcla de > estilos? > > El día 18 de febrero de 2015, 18:11, Luis Fernando Barrera > <luisferna...@informind.com> escribió: > > nueva_lista = [map(int, x) for x in lista] > > nueva_lista = [[int(y) for y in x] for x in lista] > nueva_lista = map(lambda x: map(int, x), lista) > > Paradójicamente la mezcla de estilos es más compacta y tal vez más > legible. Estoy confuso :-O > > Un abrazo, > > Javi > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > > > > > > [image: Universidad de Medellín] > > * La información contenida en este correo electrónico, está diseñada para > uso exclusivo de la persona o entidad a la que va dirigida, y puede > contener datos que sean confidenciales. Si el lector de este mensaje no es > el destinatario previsto, empleado o agente responsable, se le notifica que > cualquier divulgación, distribución o copia de esta comunicación está > estrictamente prohibida. Si usted ha recibido este mensaje por error, por > favor notifíquelo al correo del cual fue enviado. * > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/