Re: [Python-es] Pythoniano y c niano

2012-12-28 Por tema joe di castro
On 27/12/12 01:58, Chema Cortes wrote: Por cierto Chema, en los fragmentos de códigos que has publicado en este hilo cometes un pequeño desliz, actualmente al número uno no se le considera número primo y lo estas incluyendo. :) -- joe di castro http://joedicastro.com

Re: [Python-es] Pythoniano y c niano

2012-12-27 Por tema monoBOT
El 26 de diciembre de 2012 23:50, Daπid davidmen...@gmail.com escribió: Si quieres, puedes meter eso en un decorador, pero yo lo uso directamente. Así puedo medir tanto las funciones como el resto del proceso. Yo la mia la uso tanto como decorador como directamente. -- *monoBOT* Visite mi

Re: [Python-es] Pythoniano y c niano

2012-12-27 Por tema kausdiv
Precisamente a esa forma de código y las recomendaciones que has hecho, es lo que creo que marca la diferencia entre un programa pytoniano y uno más estilo c, java, etc. Muy bueno el código que has puesto. Refleja lo que quería decir y de camino se aprende. !! Pongo la versión que sería

[Python-es] Pythoniano y c niano

2012-12-26 Por tema kausdiv
Hola. Estoy aprendiendo Python (me gusta muchisimo). El problema que todo lo que escribo lo hago al estilo ceniano. Es decir tipo C o java, y quiero adentrarme al estilo pythoniano. Por ejemplo este programita que busca los números primos entre 2 números dados. ---

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema lasizoillo
El día 26 de diciembre de 2012 11:04, kausdiv kaus...@gmail.com escribió: Hola. Estoy aprendiendo Python (me gusta muchisimo). El problema que todo lo que escribo lo hago al estilo ceniano. Es decir tipo C o java, y quiero adentrarme al estilo pythoniano. Por ejemplo este programita que

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema monoBOT
yo lo haría así: def prim(n): if n==1: return False if n==2 or n==3: return n for m in xrange(2,int (n**0.5)+1): if n % m: if m == int (n**0.5): return n else: return False def fprimos(n1, n2): l = [] for

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Daπid
2012/12/26 kausdiv kaus...@gmail.com: def main(): [...] main() Esto sólo es útil si lo haces dentro de un if __name__ == '__main__': main() Esto significa que si el archivo se está ejecutando por sí mismo (no llamado desde otro módulo), ejecuta main(). En realidad, esto es útil

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Daπid
Por otro lado, el algoritmo se puede mejorar un poco. Hay métodos muy optimizados para calcular números primos, pero sin irnos a matemáticas superiores, podemos mejorar tu proceso. Un número es primo si y sólo si no es divisible exactamente por todos los números menores que él (sin contar el 1), y

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Ander Garmendia
Buenas, soy nuevo en el universo python y llevo un tiempo en esta lista y esta pregunta me ha llamado la atención. ¿ Hay un modo pythonico de hacer las cosas ? Viendo las soluciones solo veo algoritmos adaptados a las estructuras de control de python. ¿ Es cosa mía o se me esta pasando algo ?

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Kiko
El 26 de diciembre de 2012 15:11, Ander Garmendia kelertx...@gmail.comescribió: Buenas, soy nuevo en el universo python y llevo un tiempo en esta lista y esta pregunta me ha llamado la atención. ¿ Hay un modo pythonico de hacer las cosas ? Viendo las soluciones solo veo algoritmos adaptados

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Daπid
On Dec 26, 2012 3:27 PM, Kiko kikocorre...@gmail.com wrote: Como comentas se intenta resolver un problema y hay mejores y peores formas de resolverlo. Con el modo pythónico yo entiendo que se refiere a seguir una serie de principios que permiten que el código sea más legible, sencillo y elegante

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Ricardo Cárdenes
2012/12/26 Daπid davidmen...@gmail.com Calculando todos los primos desde 2 hasta n tenemos (spoiler): http://pastebin.com/fMRH5xKK Lo que hace este programa tiene un nombre: la criba de Eratóstenes. Es muy simple en cuanto a su concepción y debe de ser uno de los métodos conceptuales más

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Chema Cortes
El día 26 de diciembre de 2012 15:11, Ander Garmendia kelertx...@gmail.com escribió: Buenas, soy nuevo en el universo python y llevo un tiempo en esta lista y esta pregunta me ha llamado la atención. ¿ Hay un modo pythonico de hacer las cosas ? Viendo las soluciones solo veo algoritmos

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema kausdiv
Muchas gracias a todos. He aprendido mucho. Chema, precisamente me refería a esa forma de escribir en python. Gracias. Una pregunta: ¿ como hacéis para medir el tiempo de ejecución de una función ? Sabia hacerlo en Pascal pero no en PY. Y una sugerencia: ¿ que os parece organizar un concurso

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema kausdiv
Pues si, hay un modo pitoniano de escribir código. Python tiene una riqueza y una naturalidad al escribir que define su propio modo de escribir. Verás cuando yo empecé (y aún me pasa), mis programas parecían escritos en java o c excepto que usaba lenguaje PY. Pero cambiando algunas cosas

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema joe di castro
On 26/12/12 18:40, kausdiv wrote: Pues si, hay un modo pitoniano de escribir código. Python tiene una riqueza y una naturalidad al escribir que define su propio modo de escribir. Verás cuando yo empecé (y aún me pasa), mis programas parecían escritos en java o c excepto que usaba lenguaje

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema kausdiv
100% de acuerdo. Voy a poner en marcha lo que sugieres de los pares, etc. En cuanto a los libros, lo que he encontrado está en inglés. Esta lista me sirve de mucho porque aunque escribo poco me fijo en los trozos de código que ponéis. Saludos. Saludos. La mayor diferencia entre el codigo

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema lasizoillo
El día 26 de diciembre de 2012 18:31, kausdiv kaus...@gmail.com escribió: Muchas gracias a todos. He aprendido mucho. Chema, precisamente me refería a esa forma de escribir en python. Gracias. Una pregunta: ¿ como hacéis para medir el tiempo de ejecución de una función ? Sabia hacerlo en

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema joe di castro
On 26/12/12 19:20, kausdiv wrote: 100% de acuerdo. Voy a poner en marcha lo que sugieres de los pares, etc. En cuanto a los libros, lo que he encontrado está en inglés. Esta lista me sirve de mucho porque aunque escribo poco me fijo en los trozos de código que ponéis. Saludos.

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Chema Cortes
El día 26 de diciembre de 2012 18:40, kausdiv kaus...@gmail.com escribió: Para ilustrarlo mejor compara el código que ha escrito Chema con el mio del principio: (aunque ambos usen formas distintas de conseguir los primos) No son comparables ya que se tratan de diferentes algoritmos. Tan sólo

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Chema Cortes
El día 26 de diciembre de 2012 21:22, Chema Cortes pych...@gmail.com escribió: en una sóla línea: def fprimos(n,x): return [x for x in range(n,x) if all(n%k!=0 for k in range(2,n))] He copiado y pegado muy rápido. La versión correcta: def fprimos(n,x): return [x for x in range(n,x) if

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Daπid
Más fácil: import time t0 = time.time() [...] dt = time.time() - t0 print int(dt / 3600), ':', int(dt % 3600 / 60), ':', dt % 60 Si quieres, puedes meter eso en un decorador, pero yo lo uso directamente. Así puedo medir tanto las funciones como el resto del proceso. 2012/12/26 monoBOT

Re: [Python-es] Pythoniano y c niano

2012-12-26 Por tema Chema Cortes
El día 27 de diciembre de 2012 00:50, Daπid davidmen...@gmail.com escribió: Más fácil: import time t0 = time.time() [...] dt = time.time() - t0 print int(dt / 3600), ':', int(dt % 3600 / 60), ':', dt % 60 Si quieres, puedes meter eso en un decorador, pero yo lo uso directamente. Así