Re: [Python-es] como leer una tuberia?

2013-08-07 Por tema xiao xiong mao panda rojo
doh!gracias. funciono bien aqui.me estaba complicando la vida en vano XD

> Date: Wed, 7 Aug 2013 23:48:41 -0500
> From: razpei...@gmail.com
> To: python-es@python.org
> Subject: Re: [Python-es] como leer una tuberia?
> 
> # main.py
> try:
> while True:
> print raw_input()
> except EOFError:
> pass
> 
> A me funciono bien.
> cat input.txt | python main.py
> 
> 
> El 7 de agosto de 2013 23:31, xiao xiong mao panda rojo
>  escribió:
> >
> > hola. otra ves con una pregunta rara.
> > como hago que mi script lea los datos que recibe por una tubería?
> > intente algo como
> >
> > print raw_input()
> >
> > y luego hice
> > $:  echo "probando" | python script.py
> > probando
> > funciona pero cuando lo hago con un archivo solo imprime la primera linea.
> > cat archivoConVariasLineas | python script.py
> >
> > si lo intento con un bucle tengo problemas con las lineas vacias
> > debe haber alguna forma mas adecuada de hacer esto.
> >
> > tienen alguna sugerencia? gracias
> >
> > ___
> > Python-es mailing list
> > Python-es@python.org
> > http://mail.python.org/mailman/listinfo/python-es
> > FAQ: http://python-es-faq.wikidot.com/
> >
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
  ___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] como leer una tuberia?

2013-08-07 Por tema Ricardo Azpeitia Pimentel
# main.py
try:
while True:
print raw_input()
except EOFError:
pass

A me funciono bien.
cat input.txt | python main.py


El 7 de agosto de 2013 23:31, xiao xiong mao panda rojo
 escribió:
>
> hola. otra ves con una pregunta rara.
> como hago que mi script lea los datos que recibe por una tubería?
> intente algo como
>
> print raw_input()
>
> y luego hice
> $:  echo "probando" | python script.py
> probando
> funciona pero cuando lo hago con un archivo solo imprime la primera linea.
> cat archivoConVariasLineas | python script.py
>
> si lo intento con un bucle tengo problemas con las lineas vacias
> debe haber alguna forma mas adecuada de hacer esto.
>
> tienen alguna sugerencia? gracias
>
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] como leer una tuberia?

2013-08-07 Por tema xiao xiong mao panda rojo
hola. otra ves con una pregunta rara.como hago que mi script lea los datos que 
recibe por una tubería?intente algo como
print raw_input()
y luego hice$:  echo "probando" | python script.py  probandofunciona pero 
cuando lo hago con un archivo solo imprime la primera linea.  cat 
archivoConVariasLineas | python script.py
si lo intento con un bucle tengo problemas con las lineas vaciasdebe haber 
alguna forma mas adecuada de hacer esto.
tienen alguna sugerencia? gracias ___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Kiko
No conocía openBUGS.

Ya nos contarás (si puedes y quieres) lo que te traes entre manos, que
seguro que aprenderemos todos!!!

El 07/08/13, Chema Cortes  escribió:
> El día 7 de agosto de 2013 17:56, Kiko  escribió:
>
>> pandas está muy 'cythonizado' por lo que para muchas operaciones
>> debería ser muy buena opción. Su funcionamiento pretende emular parte
>> de la funcionalidad de R (dataframes).
>
> Sí, ya me doy cuenta que todo va moviéndose muy rápido. De momento
> quiero centrarme en R y OpenBUGS (inferencia bayesiana), pero tengo a
> pandas y scikit-learn en espera.
>
>> Si trabajas con información muy 'grande' que no entra en memoria una
>> buena opción es pytables ya que el acceso a los datos es muy rápido.
>> Si te entra todo en memoria quizá no es necesario que lo pruebes
>> ahora.
>
> De momento, no paso de 5 ó 6 GB. que es aún manejable. Procuro que las
> operaciones no aumenten el gasto de memoria, pero preveo pasar a otras
> estrategias como el cálculo distribuido.
>
>> Gente que andaba desarrollando numexpr (Francesc) ahora están metidos
>> en continuum que son los desarrolladores de numba, blaze,... Numexpr
>> es un jit de un subconjunto limitado de operaciones. Numba quizá sea
>> algo más generalista y es realmente brillante cuando hay que meterse
>> en bucles y la vectorización de numpy no ayuda del todo
>> (http://jakevdp.github.io/blog/2013/06/15/numba-vs-cython-take-2/).
>
> Sigo bastante de cerca la labor de Francesc, Travis Oliphant y el
> resto del equipo de continuum. LLVM (usado por numba) está entre las
> "estrategias" de cálculo distribuido consideradas, aunque no descarto
> soluciones del estilo hadoop.
>
>
>>
>> Saludos.
>>
>> El 07/08/13, Chema Cortes  escribió:
>>> El día 7 de agosto de 2013 14:30, Kiko  escribió:
>>>
 mira también rot90, fliplr, flipud...

 http://docs.scipy.org/doc/numpy/reference/routines.array-manipulation.html#rearranging-elements
>>>
>>> Los había mirado, pero son funciones para  >= 2-d. No veo cómo usarlas
>>> con listas unidimensionales.
>>>
>>>

 El 07/08/13, Chema Cortes  escribió:
> El día 6 de agosto de 2013 16:38, Daπid 
> escribió:
>> 2013/8/6 Chema Cortes :
>
>> Por otro lado, si la operación de inversión no se hace sobre el array,
>> sino sobre una copia, se gana tiempo:
>>
>> In [31]: l2 = l.copy()
>>
>> In [32]: %timeit l[i+1:j+1]=l2[j:i:-1]
>> 1 loops, best of 3: 101 us per loop
>
> He mirado un poco mejor el funcionamiento de los arrays en numpy. Los
> troceos no crean nuevos arrays, sino lo que llama "vistas" ("views")
> (a excepción de los "fancy indexing" de numpy). Como las vistas están
> enlazadas con el objeto original, los cambios en una vista se efectúan
> directamente sobre el objeto original de forma eficiente.
>
> Creo que usaré los arrays de numpy para operaciones con listas
> grandes. También necesitaba hacer rotar la lista, cosa que veo que
> puede hacer con np.roll, aunque no es tan eficiente como deque
> .rotate() que realiza la operación "in-place".
>
> Como curiosidad, había descartado algunas pruebas bizarras con deque,
> pero muestra lo increiblemente rápido que puede llegar a ser:
>
> d=deque(l)
>
> %timeit d.rotate(-i-1);d.extendleft([d.popleft() for _ in
> range(j-i)]);d.rotate(i+1)
> 10 loops, best of 3: 29.8 ms per loop
>
> Es la misma operación que l[i+1:j+1]=l2[j:i:-1], primero rotando la
> lista hacia la izquierda, añadiendo la lista invertida al principio y
> volviendo a rotar hacia la derecha para mantener el mismo orden.
>
>
> --
> 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
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
 ___
 Python-es mailing list
 Python-es@python.org
 http://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
>>> http://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://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
> __

Re: [Python-es] Varios dominios en una aplicación

2013-08-07 Por tema Carlos Latorre
Si usas Apache puedes usar dominios virtuales,
Tendrás un DocumentRoot para cada dominio especial, y los dominios que no
recojas explicitamente irán al DocumentRoot del dominio por defecto.
Si quieres puedo ayudarte con la configuración, pero para ello necesito
saber cual es la versión de Apache que estas usando.

Saludos,
Carlos

El 7 de agosto de 2013 12:42, Christopher Mejía  escribió:

> Gracias por tu respuesta, después de mucho leer creo que el gran problema
> radicaría en hacer el "wildcard" ósea que los demás dominios no declarados
> respondan a una dirección sin perder su "identidad" y que además no haya
> que hacer un registro por dominio, de momento uso apache, y va bastante
> bien, pero podría considerar cambiarme…
>
> Saludos…
>
> On Aug 7, 2013, at 4:32 AM, G V  wrote:
>
> depende del servidor que uses (apache, nginx, etc.)
>
> en nginx sería cuestión de usar un alias para el segundo dominio que
> pusiera como root la segunda raiz.
>
> si estas uasndo algun otro servidor, será cuestion de mirar la doc.
> correspondiente
>
>
> 2013/8/6 Christopher Mejía 
>
>> Hola comunidad, tengo una duda sobre como utilizar correctamente varios
>> dominios en una aplicación, asumamos el siguiente escenario:
>>
>> dominio1.com apunta a / que es la raíz de la aplicación
>> dominio2.com apunta a /dominio2.com/
>>
>> En /dominio2.com/ tenemos varias urls estilo {% url 'pruebas:prueba1'
>> test.id %} que apunta a dominio1.com/dominio2.com/prueba1/1 por ejemplo
>>
>>
>> Así si visitamos dominio1.com/dominio2.com/ las urls funcionan bien,
>> estas redirigen hacia dominio1.com/dominio2.com/prueba1/1/ pero si lo
>> visitamos desde dominio2.com estas continuan redirigiendo a esa url en
>> lugar de cambiar a dominio2.com/prueba/1/
>>
>> Como puedo solucionar esto?
>>
>> Gracias de antemano…
>>
>>
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
>
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Chema Cortes
El día 7 de agosto de 2013 17:56, Kiko  escribió:

> pandas está muy 'cythonizado' por lo que para muchas operaciones
> debería ser muy buena opción. Su funcionamiento pretende emular parte
> de la funcionalidad de R (dataframes).

Sí, ya me doy cuenta que todo va moviéndose muy rápido. De momento
quiero centrarme en R y OpenBUGS (inferencia bayesiana), pero tengo a
pandas y scikit-learn en espera.

> Si trabajas con información muy 'grande' que no entra en memoria una
> buena opción es pytables ya que el acceso a los datos es muy rápido.
> Si te entra todo en memoria quizá no es necesario que lo pruebes
> ahora.

De momento, no paso de 5 ó 6 GB. que es aún manejable. Procuro que las
operaciones no aumenten el gasto de memoria, pero preveo pasar a otras
estrategias como el cálculo distribuido.

> Gente que andaba desarrollando numexpr (Francesc) ahora están metidos
> en continuum que son los desarrolladores de numba, blaze,... Numexpr
> es un jit de un subconjunto limitado de operaciones. Numba quizá sea
> algo más generalista y es realmente brillante cuando hay que meterse
> en bucles y la vectorización de numpy no ayuda del todo
> (http://jakevdp.github.io/blog/2013/06/15/numba-vs-cython-take-2/).

Sigo bastante de cerca la labor de Francesc, Travis Oliphant y el
resto del equipo de continuum. LLVM (usado por numba) está entre las
"estrategias" de cálculo distribuido consideradas, aunque no descarto
soluciones del estilo hadoop.


>
> Saludos.
>
> El 07/08/13, Chema Cortes  escribió:
>> El día 7 de agosto de 2013 14:30, Kiko  escribió:
>>
>>> mira también rot90, fliplr, flipud...
>>>
>>> http://docs.scipy.org/doc/numpy/reference/routines.array-manipulation.html#rearranging-elements
>>
>> Los había mirado, pero son funciones para  >= 2-d. No veo cómo usarlas
>> con listas unidimensionales.
>>
>>
>>>
>>> El 07/08/13, Chema Cortes  escribió:
 El día 6 de agosto de 2013 16:38, Daπid  escribió:
> 2013/8/6 Chema Cortes :

> Por otro lado, si la operación de inversión no se hace sobre el array,
> sino sobre una copia, se gana tiempo:
>
> In [31]: l2 = l.copy()
>
> In [32]: %timeit l[i+1:j+1]=l2[j:i:-1]
> 1 loops, best of 3: 101 us per loop

 He mirado un poco mejor el funcionamiento de los arrays en numpy. Los
 troceos no crean nuevos arrays, sino lo que llama "vistas" ("views")
 (a excepción de los "fancy indexing" de numpy). Como las vistas están
 enlazadas con el objeto original, los cambios en una vista se efectúan
 directamente sobre el objeto original de forma eficiente.

 Creo que usaré los arrays de numpy para operaciones con listas
 grandes. También necesitaba hacer rotar la lista, cosa que veo que
 puede hacer con np.roll, aunque no es tan eficiente como deque
 .rotate() que realiza la operación "in-place".

 Como curiosidad, había descartado algunas pruebas bizarras con deque,
 pero muestra lo increiblemente rápido que puede llegar a ser:

 d=deque(l)

 %timeit d.rotate(-i-1);d.extendleft([d.popleft() for _ in
 range(j-i)]);d.rotate(i+1)
 10 loops, best of 3: 29.8 ms per loop

 Es la misma operación que l[i+1:j+1]=l2[j:i:-1], primero rotando la
 lista hacia la izquierda, añadiendo la lista invertida al principio y
 volviendo a rotar hacia la derecha para mantener el mismo orden.


 --
 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
 http://mail.python.org/mailman/listinfo/python-es
 FAQ: http://python-es-faq.wikidot.com/

>>> ___
>>> Python-es mailing list
>>> Python-es@python.org
>>> http://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
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
> ___
> Python-es mailing list
> Python-es@python.org
> http://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
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] [OT] Formatos de mensajes enviados a la lista PYTHON-ES

2013-08-07 Por tema Chema Cortes


Últimamente estamos recibiendo bastantes mensajes que no cumplen con
las normas de la lista. Además de suponer más trabajo para los
moderadores de la lista, también suponen retrasos en el reenvío y
molestias para el resto de lectores.

Por favor, comprobar en la configuración de vuestros clientes de
correo que los mensajes enviados a esta lista estén en texto plano, a
ser posible sin código html. Sobre todo, aseguraros que las firmas de
los mensajes no incluyan gráficos, ni tampoco texto codificado con un
charset distinto al resto del mensaje. Sólo texto plano. El software
de la lista, mailman, es muy estricto en estos términos y considera
estos mensajes como amenazas potenciales que requieren de revisión
manual.

Muchas gracias por vuestra comprensión.




___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Kiko
pandas está muy 'cythonizado' por lo que para muchas operaciones
debería ser muy buena opción. Su funcionamiento pretende emular parte
de la funcionalidad de R (dataframes).

Si trabajas con información muy 'grande' que no entra en memoria una
buena opción es pytables ya que el acceso a los datos es muy rápido.
Si te entra todo en memoria quizá no es necesario que lo pruebes
ahora.

Gente que andaba desarrollando numexpr (Francesc) ahora están metidos
en continuum que son los desarrolladores de numba, blaze,... Numexpr
es un jit de un subconjunto limitado de operaciones. Numba quizá sea
algo más generalista y es realmente brillante cuando hay que meterse
en bucles y la vectorización de numpy no ayuda del todo
(http://jakevdp.github.io/blog/2013/06/15/numba-vs-cython-take-2/).

Saludos.

El 07/08/13, Chema Cortes  escribió:
> El día 7 de agosto de 2013 14:30, Kiko  escribió:
>
>> mira también rot90, fliplr, flipud...
>>
>> http://docs.scipy.org/doc/numpy/reference/routines.array-manipulation.html#rearranging-elements
>
> Los había mirado, pero son funciones para  >= 2-d. No veo cómo usarlas
> con listas unidimensionales.
>
>
>>
>> El 07/08/13, Chema Cortes  escribió:
>>> El día 6 de agosto de 2013 16:38, Daπid  escribió:
 2013/8/6 Chema Cortes :
>>>
 Por otro lado, si la operación de inversión no se hace sobre el array,
 sino sobre una copia, se gana tiempo:

 In [31]: l2 = l.copy()

 In [32]: %timeit l[i+1:j+1]=l2[j:i:-1]
 1 loops, best of 3: 101 us per loop
>>>
>>> He mirado un poco mejor el funcionamiento de los arrays en numpy. Los
>>> troceos no crean nuevos arrays, sino lo que llama "vistas" ("views")
>>> (a excepción de los "fancy indexing" de numpy). Como las vistas están
>>> enlazadas con el objeto original, los cambios en una vista se efectúan
>>> directamente sobre el objeto original de forma eficiente.
>>>
>>> Creo que usaré los arrays de numpy para operaciones con listas
>>> grandes. También necesitaba hacer rotar la lista, cosa que veo que
>>> puede hacer con np.roll, aunque no es tan eficiente como deque
>>> .rotate() que realiza la operación "in-place".
>>>
>>> Como curiosidad, había descartado algunas pruebas bizarras con deque,
>>> pero muestra lo increiblemente rápido que puede llegar a ser:
>>>
>>> d=deque(l)
>>>
>>> %timeit d.rotate(-i-1);d.extendleft([d.popleft() for _ in
>>> range(j-i)]);d.rotate(i+1)
>>> 10 loops, best of 3: 29.8 ms per loop
>>>
>>> Es la misma operación que l[i+1:j+1]=l2[j:i:-1], primero rotando la
>>> lista hacia la izquierda, añadiendo la lista invertida al principio y
>>> volviendo a rotar hacia la derecha para mantener el mismo orden.
>>>
>>>
>>> --
>>> 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
>>> http://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://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
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Daπid
2013/8/7 Chema Cortes :
> Pytable+hdf5 lo tenía más asociado con datos masivos "jerarquizados".
> Igual estoy equivocado.

PyTables son, esencialmente, tablas de datos, con  columnas
homogéneas. Ofrece una interfaz tipo ndarray (incluyendo slices), pero
que para muchas operaciones optimiza el acceso a disco. También tiene
capacidades de búsqueda "in kernel" (las filas en las que la tercera
columna sea menor que la raíz de dos), que se hacen a velocidad de C.
Es práctico para manejar volúmenes de datos muy grandes que no quepan
en memoria.

> Numexpr (y/o numba) también los tengo pendientes. CArray no lo
> conocía, aunque parece relacionado con los anteriores. ¿Podría numexpr
> mejorar los resultados de numba que ha puesto Daπid?

CArray significa "chunked array". Es un ndarray que no ocupa
necesariamente un trozo de memoria contiguo. Cuando se hacen insertan
o eliminan elementos en algún punto del medio de un ndarray, todo el
resto de la memoria hasta el final ha de desplazarse; un carray, al
estar divididido, sólo necesita mover un bloque pequeño. Creo que no
es algo que te interese ahora.

No estoy seguro de esto, pero por lo que he visto, carray es útil como
estructura de bajo nivel sobre la que montar librerías avanzadas de
manejo de datos, no sé si hay mucho uso en producción directamente.

Por su lado, lo único que Numexpr hace es operaciones elemento a
elemento (o la suma/producto total) sobre arrays optimizando el uso de
la caché de la CPU y paralelizando de forma transparente. En el
clásico ejemplo a + b * c, siendo a, b y c ndarrays, Python puro
realiza primero b * c, lo guarda en una variable temporal que luego
suma a a. Numexpr hace las operaciones elemento a elemento
directamente (a[0] + b[0] * c[0]), saltándose la variable temporal y
aplicando todas las optimizaciones mencionadas. En la documentación no
mencionan nada de revertir un array, y, aunque existiera, dudo que
fuera útil en este caso.

Numba es un optimizador genérico* con mucha maquinaria pesada. La idea
es que sea prácticamente automático, y pueda inferir tipos, compilar,
paralelizar, procesar datos a través de la GPU... de forma
transparente o casi transparente (siempre vienen bien ayudas). Su
mayor inconveniente es que está todavía en desarrollo temprano
(heisenbugs incluidos); y que requiere compilar LLVM.



* Aunque a día de hoy sólo es verdaderamente efectivo sobre ndarrays,
y la mayor parte del desarrollo va en esa dirección.
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Varios dominios en una aplicación

2013-08-07 Por tema Christopher Mejía
Gracias por tu respuesta, después de mucho leer creo que el gran problema 
radicaría en hacer el "wildcard" ósea que los demás dominios no declarados 
respondan a una dirección sin perder su "identidad" y que además no haya que 
hacer un registro por dominio, de momento uso apache, y va bastante bien, pero 
podría considerar cambiarme…

Saludos…

On Aug 7, 2013, at 4:32 AM, G V  wrote:

> depende del servidor que uses (apache, nginx, etc.)
> 
> en nginx sería cuestión de usar un alias para el segundo dominio que pusiera 
> como root la segunda raiz.
> 
> si estas uasndo algun otro servidor, será cuestion de mirar la doc. 
> correspondiente
> 
> 
> 2013/8/6 Christopher Mejía 
> Hola comunidad, tengo una duda sobre como utilizar correctamente varios 
> dominios en una aplicación, asumamos el siguiente escenario:
> 
> dominio1.com apunta a / que es la raíz de la aplicación
> dominio2.com apunta a /dominio2.com/
> 
> En /dominio2.com/ tenemos varias urls estilo {% url 'pruebas:prueba1' test.id 
> %} que apunta a dominio1.com/dominio2.com/prueba1/1 por ejemplo
> 
> 
> Así si visitamos dominio1.com/dominio2.com/ las urls funcionan bien, estas 
> redirigen hacia dominio1.com/dominio2.com/prueba1/1/ pero si lo visitamos 
> desde dominio2.com estas continuan redirigiendo a esa url en lugar de cambiar 
> a dominio2.com/prueba/1/
> 
> Como puedo solucionar esto?
> 
> Gracias de antemano…
> 
> 
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
> 
> 
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/

___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Chema Cortes
El día 7 de agosto de 2013 14:30, Kiko  escribió:

> mira también rot90, fliplr, flipud...
>
> http://docs.scipy.org/doc/numpy/reference/routines.array-manipulation.html#rearranging-elements

Los había mirado, pero son funciones para  >= 2-d. No veo cómo usarlas
con listas unidimensionales.


>
> El 07/08/13, Chema Cortes  escribió:
>> El día 6 de agosto de 2013 16:38, Daπid  escribió:
>>> 2013/8/6 Chema Cortes :
>>
>>> Por otro lado, si la operación de inversión no se hace sobre el array,
>>> sino sobre una copia, se gana tiempo:
>>>
>>> In [31]: l2 = l.copy()
>>>
>>> In [32]: %timeit l[i+1:j+1]=l2[j:i:-1]
>>> 1 loops, best of 3: 101 us per loop
>>
>> He mirado un poco mejor el funcionamiento de los arrays en numpy. Los
>> troceos no crean nuevos arrays, sino lo que llama "vistas" ("views")
>> (a excepción de los "fancy indexing" de numpy). Como las vistas están
>> enlazadas con el objeto original, los cambios en una vista se efectúan
>> directamente sobre el objeto original de forma eficiente.
>>
>> Creo que usaré los arrays de numpy para operaciones con listas
>> grandes. También necesitaba hacer rotar la lista, cosa que veo que
>> puede hacer con np.roll, aunque no es tan eficiente como deque
>> .rotate() que realiza la operación "in-place".
>>
>> Como curiosidad, había descartado algunas pruebas bizarras con deque,
>> pero muestra lo increiblemente rápido que puede llegar a ser:
>>
>> d=deque(l)
>>
>> %timeit d.rotate(-i-1);d.extendleft([d.popleft() for _ in
>> range(j-i)]);d.rotate(i+1)
>> 10 loops, best of 3: 29.8 ms per loop
>>
>> Es la misma operación que l[i+1:j+1]=l2[j:i:-1], primero rotando la
>> lista hacia la izquierda, añadiendo la lista invertida al principio y
>> volviendo a rotar hacia la derecha para mantener el mismo orden.
>>
>>
>> --
>> 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
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
> ___
> Python-es mailing list
> Python-es@python.org
> http://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
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Chema Cortes
El día 7 de agosto de 2013 13:22, Kiko  escribió:
> pandas está muy optimizado (cython) para manejar datos
>
> pytables + hdf5 quizá podría ser una opción?
>
> numexpr para la operación de invertir la lista?
>
> carray creo que no sería una opción para este caso (
> https://pypi.python.org/pypi/carray/0.5.1).

Estas herramientas las tenía como "pendientes" de revisar.

Pandas lo había dejado para después de conocer mejor R, pero veo que
me tendré que poner con ello ya.

Pytable+hdf5 lo tenía más asociado con datos masivos "jerarquizados".
Igual estoy equivocado.

Numexpr (y/o numba) también los tengo pendientes. CArray no lo
conocía, aunque parece relacionado con los anteriores. ¿Podría numexpr
mejorar los resultados de numba que ha puesto Daπid?

Todavía estoy trabajando en los modelos y me queda aún bastante margen
para pulir antes de ponerme con la optimización de cálculos y
requisitos de memoria. De momento solo busco una solución
(relativamente) genérica que sea escalable.


> Lo siento, estoy alejado de un pc en condiciones para hacer las
> pruebas yo mismo y no decir lo primero que se me ocurre ;-)

Siempre es de agredecer cualquier aporte.

> p.d.: Perdón por el top-posting
>
> El 07/08/13, Chema Cortes  escribió:
>> El día 7 de agosto de 2013 04:05, Asdrúbal Iván Suárez Rivera
>>  escribió:
>>> Saludos gente, sería interesante probar con blist[0]. A primera vista
>>> pareciera bastante rápida.
>>>
>>> [0] https://pypi.python.org/pypi/blist/
>>
>> Tiene buena pinta, aunque la he probado y no mejora mi caso
>> particular. Mejora el tema de trocear listas grandes, parece que no lo
>> hace tan bien cuando se trata de invertir listas. Supongo que es
>> debido a tener que mantener el B+tree actualizado.
>>
>> Pongo tiempos con blist, ndarray y list, respectivamente:
>>
>> %timeit b[i+1:j+1]=b[j:i:-1]
>> 1 loops, best of 3: 144 ms per loop
>>
>> %timeit l[i+1:j+1]=l[j:i:-1]
>> 100 loops, best of 3: 10.5 ms per loop
>>
>> %timeit L[i+1:j+1]=L[j:i:-1]
>> 10 loops, best of 3: 53.8 ms per loop
>>
>> Si miramos sólo la inversión, (ndarray no tiene inversión "in-place"):
>>
>> %timeit b.reverse()
>> 100 loops, best of 3: 9.04 ms per loop
>>
>> %timeit L.reverse()
>> 100 loops, best of 3: 5.76 ms per loop
>>
>> Para otras operaciones, blist funciona algo mejor:
>>
>> %timeit -n100 del b[1000:10002]
>> 100 loops, best of 3: 1.54 ms per loop
>>
>> %timeit -n100 del L[1000:10002]
>> 100 loops, best of 3: 2.13 ms per loop
>>
>>
>> --
>> 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
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
> ___
> Python-es mailing list
> Python-es@python.org
> http://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
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Insertar datos mysql

2013-08-07 Por tema Ander Garmendia
Échale un vistazo a la documentación de MySQLdb:
http://mysql-python.sourceforge.net/MySQLdb.html

Básicamente deberias cambiar la sentencia SQL y pasar los parametros
con una tupla en el método execute. Algo así:

sql = """INSERT INTO clientes(cedula) VALUES (%s)"""

cursor.execute(sql, (dtcedula,))

El día 7 de agosto de 2013 12:39, G V  escribió:
> Creo que la solución que buscas está en
> https://github.com/farcepest/MySQLdb1/blob/master/doc/user_guide.rst#some-examples
>
> pero a grandes rasgos estas intentando hacer la sustitucion a mano dentro
> del propio string
>
>
> 2013/8/6 Alfredo Riguetti 
>>
>> Hola a Todos
>> Necesito que alguien me ayude con esto. tengo que ingresar unos datos del
>> cliente a una base y si les pongo los datos a mano en el insert lo hace
>> perfecto pero si lo quiero hacer con variabnles no lo hace alguien me puede
>> ayudar copio el codigo, seguro algo esta mal escrito o algo asi.
>>
>> ahora deje solo los datos para la cedula para probar pero nada ...
>>
>> def OnClickAceptar(self,event):
>>
>> dtcedula = self.TextoCedulaCli.GetValue()
>> nombres = self.TextoNombresCli.GetValue()
>> apellidos = self.TextoApellidosCli.GetValue()
>> direccion = self.TextoDireccionCli.GetValue()
>> email = self.TextoCorreo.GetValue()
>> telefonocelular = self.TextoTelefonoCeluar.GetValue()
>> telefonoparticular = self.TextoTelefonoParticular.GetValue()
>>
>>
>>
>> # Open database connection
>> db =
>> MySQLdb.connect("localhost","root","miyaguiAdminaya2010","cambio")
>>
>> # prepare a cursor object using cursor() method
>> cursor = db.cursor()
>>
>> # Prepare SQL query to INSERT a record into the database.
>>
>> print dtcedula
>> sql = """INSERT INTO clientes(cedula) VALUES ('%s') % dtcedula"""
>>
>>
>> try:
>>  # Execute the SQL command
>>  cursor.execute(sql)
>>  # Commit your changes in the database
>>  db.commit()
>> except:
>>  #Rollback in case there is any error
>>  db.rollback()
>>
>>  # disconnect from server
>>  db.close()
>>
>> ___
>> Python-es mailing list
>> Python-es@python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>
>
>
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Daπid
2013/8/6 Chema Cortes :
> Interesante caso usando numpy y numba. Pero el problema que veo es que
> la función flipper no debería tener fijados los parámetros de corte,
> lo que supongo que hará perder bastante eficacia al JIT de numba.

El hecho de que Numba sea capaz de optimizarlo (significativamente,
además) significa que un compilador puede mejorarlo, y por tanto,
cython debería poder hacer algo. Mi intento, sin embargo, lanzándole
todo lo que sé (que tampoco es mucho) no ha servido de nada,
exactamente el mismo tiempo:

import numpy as np
cimport numpy as np

cimport cython

DTYPE = np.float64
ctypedef np.float64_t DTYPE_t

@cython.boundscheck(False)
@cython.wraparound(False)
def flipper(np.ndarray[DTYPE_t, ndim=1] K not None, int i, int j):
K[i+1:j+1]=K[j:i:-1]
return K


Agradezco comentarios y sugerencias.
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Kiko
mira también rot90, fliplr, flipud...

http://docs.scipy.org/doc/numpy/reference/routines.array-manipulation.html#rearranging-elements

El 07/08/13, Chema Cortes  escribió:
> El día 6 de agosto de 2013 16:38, Daπid  escribió:
>> 2013/8/6 Chema Cortes :
>
>> Por otro lado, si la operación de inversión no se hace sobre el array,
>> sino sobre una copia, se gana tiempo:
>>
>> In [31]: l2 = l.copy()
>>
>> In [32]: %timeit l[i+1:j+1]=l2[j:i:-1]
>> 1 loops, best of 3: 101 us per loop
>
> He mirado un poco mejor el funcionamiento de los arrays en numpy. Los
> troceos no crean nuevos arrays, sino lo que llama "vistas" ("views")
> (a excepción de los "fancy indexing" de numpy). Como las vistas están
> enlazadas con el objeto original, los cambios en una vista se efectúan
> directamente sobre el objeto original de forma eficiente.
>
> Creo que usaré los arrays de numpy para operaciones con listas
> grandes. También necesitaba hacer rotar la lista, cosa que veo que
> puede hacer con np.roll, aunque no es tan eficiente como deque
> .rotate() que realiza la operación "in-place".
>
> Como curiosidad, había descartado algunas pruebas bizarras con deque,
> pero muestra lo increiblemente rápido que puede llegar a ser:
>
> d=deque(l)
>
> %timeit d.rotate(-i-1);d.extendleft([d.popleft() for _ in
> range(j-i)]);d.rotate(i+1)
> 10 loops, best of 3: 29.8 ms per loop
>
> Es la misma operación que l[i+1:j+1]=l2[j:i:-1], primero rotando la
> lista hacia la izquierda, añadiendo la lista invertida al principio y
> volviendo a rotar hacia la derecha para mantener el mismo orden.
>
>
> --
> 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
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Chema Cortes
El día 6 de agosto de 2013 16:38, Daπid  escribió:
> 2013/8/6 Chema Cortes :

> Por otro lado, si la operación de inversión no se hace sobre el array,
> sino sobre una copia, se gana tiempo:
>
> In [31]: l2 = l.copy()
>
> In [32]: %timeit l[i+1:j+1]=l2[j:i:-1]
> 1 loops, best of 3: 101 us per loop

He mirado un poco mejor el funcionamiento de los arrays en numpy. Los
troceos no crean nuevos arrays, sino lo que llama "vistas" ("views")
(a excepción de los "fancy indexing" de numpy). Como las vistas están
enlazadas con el objeto original, los cambios en una vista se efectúan
directamente sobre el objeto original de forma eficiente.

Creo que usaré los arrays de numpy para operaciones con listas
grandes. También necesitaba hacer rotar la lista, cosa que veo que
puede hacer con np.roll, aunque no es tan eficiente como deque
.rotate() que realiza la operación "in-place".

Como curiosidad, había descartado algunas pruebas bizarras con deque,
pero muestra lo increiblemente rápido que puede llegar a ser:

d=deque(l)

%timeit d.rotate(-i-1);d.extendleft([d.popleft() for _ in
range(j-i)]);d.rotate(i+1)
10 loops, best of 3: 29.8 ms per loop

Es la misma operación que l[i+1:j+1]=l2[j:i:-1], primero rotando la
lista hacia la izquierda, añadiendo la lista invertida al principio y
volviendo a rotar hacia la derecha para mantener el mismo orden.


-- 
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
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Kiko
pandas está muy optimizado (cython) para manejar datos

pytables + hdf5 quizá podría ser una opción?

numexpr para la operación de invertir la lista?

carray creo que no sería una opción para este caso (
https://pypi.python.org/pypi/carray/0.5.1).

Lo siento, estoy alejado de un pc en condiciones para hacer las
pruebas yo mismo y no decir lo primero que se me ocurre ;-)

p.d.: Perdón por el top-posting

El 07/08/13, Chema Cortes  escribió:
> El día 7 de agosto de 2013 04:05, Asdrúbal Iván Suárez Rivera
>  escribió:
>> Saludos gente, sería interesante probar con blist[0]. A primera vista
>> pareciera bastante rápida.
>>
>> [0] https://pypi.python.org/pypi/blist/
>
> Tiene buena pinta, aunque la he probado y no mejora mi caso
> particular. Mejora el tema de trocear listas grandes, parece que no lo
> hace tan bien cuando se trata de invertir listas. Supongo que es
> debido a tener que mantener el B+tree actualizado.
>
> Pongo tiempos con blist, ndarray y list, respectivamente:
>
> %timeit b[i+1:j+1]=b[j:i:-1]
> 1 loops, best of 3: 144 ms per loop
>
> %timeit l[i+1:j+1]=l[j:i:-1]
> 100 loops, best of 3: 10.5 ms per loop
>
> %timeit L[i+1:j+1]=L[j:i:-1]
> 10 loops, best of 3: 53.8 ms per loop
>
> Si miramos sólo la inversión, (ndarray no tiene inversión "in-place"):
>
> %timeit b.reverse()
> 100 loops, best of 3: 9.04 ms per loop
>
> %timeit L.reverse()
> 100 loops, best of 3: 5.76 ms per loop
>
> Para otras operaciones, blist funciona algo mejor:
>
> %timeit -n100 del b[1000:10002]
> 100 loops, best of 3: 1.54 ms per loop
>
> %timeit -n100 del L[1000:10002]
> 100 loops, best of 3: 2.13 ms per loop
>
>
> --
> 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
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Insertar datos mysql

2013-08-07 Por tema G V
Creo que la solución que buscas está en
https://github.com/farcepest/MySQLdb1/blob/master/doc/user_guide.rst#some-examples

pero a grandes rasgos estas intentando hacer la sustitucion a mano dentro
del propio string


2013/8/6 Alfredo Riguetti 

> Hola a Todos
> Necesito que alguien me ayude con esto. tengo que ingresar unos datos del
> cliente a una base y si les pongo los datos a mano en el insert lo hace
> perfecto pero si lo quiero hacer con variabnles no lo hace alguien me puede
> ayudar copio el codigo, seguro algo esta mal escrito o algo asi.
>
> ahora deje solo los datos para la cedula para probar pero nada ...
>
> def OnClickAceptar(self,event):
>
> dtcedula = self.TextoCedulaCli.GetValue()
> nombres = self.TextoNombresCli.GetValue(**)
> apellidos = self.TextoApellidosCli.**GetValue()
> direccion = self.TextoDireccionCli.**GetValue()
> email = self.TextoCorreo.GetValue()
> telefonocelular = self.TextoTelefonoCeluar.**GetValue()
> telefonoparticular = self.TextoTelefonoParticular.**GetValue()
>
>
>
> # Open database connection
> db = MySQLdb.connect("localhost","**root","miyaguiAdminaya2010","*
> *cambio")
>
> # prepare a cursor object using cursor() method
> cursor = db.cursor()
>
> # Prepare SQL query to INSERT a record into the database.
>
> print dtcedula
> sql = """INSERT INTO clientes(cedula) VALUES ('%s') % dtcedula"""
>
>
> try:
>  # Execute the SQL command
>  cursor.execute(sql)
>  # Commit your changes in the database
>  db.commit()
> except:
>  #Rollback in case there is any error
>  db.rollback()
>
>  # disconnect from server
>  db.close()
>
> __**_
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/**mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.**com/
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Varios dominios en una aplicación

2013-08-07 Por tema G V
depende del servidor que uses (apache, nginx, etc.)

en nginx sería cuestión de usar un alias para el segundo dominio que
pusiera como root la segunda raiz.

si estas uasndo algun otro servidor, será cuestion de mirar la doc.
correspondiente


2013/8/6 Christopher Mejía 

> Hola comunidad, tengo una duda sobre como utilizar correctamente varios
> dominios en una aplicación, asumamos el siguiente escenario:
>
> dominio1.com apunta a / que es la raíz de la aplicación
> dominio2.com apunta a /dominio2.com/
>
> En /dominio2.com/ tenemos varias urls estilo {% url 'pruebas:prueba1'
> test.id %} que apunta a dominio1.com/dominio2.com/prueba1/1 por ejemplo
>
>
> Así si visitamos dominio1.com/dominio2.com/ las urls funcionan bien,
> estas redirigen hacia dominio1.com/dominio2.com/prueba1/1/ pero si lo
> visitamos desde dominio2.com estas continuan redirigiendo a esa url en
> lugar de cambiar a dominio2.com/prueba/1/
>
> Como puedo solucionar esto?
>
> Gracias de antemano…
>
>
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] Insertar datos mysql

2013-08-07 Por tema Alfredo Riguetti

Hola a Todos
Necesito que alguien me ayude con esto. tengo que ingresar unos datos 
del cliente a una base y si les pongo los datos a mano en el insert lo 
hace perfecto pero si lo quiero hacer con variabnles no lo hace alguien 
me puede ayudar copio el codigo, seguro algo esta mal escrito o algo asi.


ahora deje solo los datos para la cedula para probar pero nada ...

def OnClickAceptar(self,event):

dtcedula = self.TextoCedulaCli.GetValue()
nombres = self.TextoNombresCli.GetValue()
apellidos = self.TextoApellidosCli.GetValue()
direccion = self.TextoDireccionCli.GetValue()
email = self.TextoCorreo.GetValue()
telefonocelular = self.TextoTelefonoCeluar.GetValue()
telefonoparticular = self.TextoTelefonoParticular.GetValue()



# Open database connection
db = 
MySQLdb.connect("localhost","root","miyaguiAdminaya2010","cambio")


# prepare a cursor object using cursor() method
cursor = db.cursor()

# Prepare SQL query to INSERT a record into the database.

print dtcedula
sql = """INSERT INTO clientes(cedula) VALUES ('%s') % dtcedula"""


try:
 # Execute the SQL command
 cursor.execute(sql)
 # Commit your changes in the database
 db.commit()
except:
 #Rollback in case there is any error
 db.rollback()

 # disconnect from server
 db.close()

___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] Varios dominios en una aplicación

2013-08-07 Por tema Christopher Mejía
Hola comunidad, tengo una duda sobre como utilizar correctamente varios 
dominios en una aplicación, asumamos el siguiente escenario:

dominio1.com apunta a / que es la raíz de la aplicación
dominio2.com apunta a /dominio2.com/

En /dominio2.com/ tenemos varias urls estilo {% url 'pruebas:prueba1' test.id 
%} que apunta a dominio1.com/dominio2.com/prueba1/1 por ejemplo


Así si visitamos dominio1.com/dominio2.com/ las urls funcionan bien, estas 
redirigen hacia dominio1.com/dominio2.com/prueba1/1/ pero si lo visitamos desde 
dominio2.com estas continuan redirigiendo a esa url en lugar de cambiar a 
dominio2.com/prueba/1/

Como puedo solucionar esto?

Gracias de antemano…

___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Eficiencia de las listas

2013-08-07 Por tema Chema Cortes
El día 7 de agosto de 2013 04:05, Asdrúbal Iván Suárez Rivera
 escribió:
> Saludos gente, sería interesante probar con blist[0]. A primera vista
> pareciera bastante rápida.
>
> [0] https://pypi.python.org/pypi/blist/

Tiene buena pinta, aunque la he probado y no mejora mi caso
particular. Mejora el tema de trocear listas grandes, parece que no lo
hace tan bien cuando se trata de invertir listas. Supongo que es
debido a tener que mantener el B+tree actualizado.

Pongo tiempos con blist, ndarray y list, respectivamente:

%timeit b[i+1:j+1]=b[j:i:-1]
1 loops, best of 3: 144 ms per loop

%timeit l[i+1:j+1]=l[j:i:-1]
100 loops, best of 3: 10.5 ms per loop

%timeit L[i+1:j+1]=L[j:i:-1]
10 loops, best of 3: 53.8 ms per loop

Si miramos sólo la inversión, (ndarray no tiene inversión "in-place"):

%timeit b.reverse()
100 loops, best of 3: 9.04 ms per loop

%timeit L.reverse()
100 loops, best of 3: 5.76 ms per loop

Para otras operaciones, blist funciona algo mejor:

%timeit -n100 del b[1000:10002]
100 loops, best of 3: 1.54 ms per loop

%timeit -n100 del L[1000:10002]
100 loops, best of 3: 2.13 ms per loop


-- 
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
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Visualizador de espectro de audio Python

2013-08-07 Por tema Juan Luis Cano

On 08/05/2013 02:57 PM, Jose Sabater Montes wrote:

On Saturday 03 August 2013 00:10:22 Acústico Cáustico wrote:

Hola a todos, soy muy nuevo en python, llevo programando 6 meses y he
decidido aprender en este lenguaje, en este momento estoy intentando hacer
un visualizador de espectro de audio, es decir, trato de hacer algo como
esto https://www.youtube.com/watch?v=-8GwCtsGpPg

Ya se como extraer la informacion espectral del audio, lo estoy haciendo
con numpy.fft, lo que no he podido descubrir es como hacer la animación, me
refiero a convertir los datos obtenidos a partir de la FFT para graficarlos
por banda de frecuencia.

Yo le echaría un vistazo a matplotlib para empezar.
De las funciones de pyplot (http://matplotlib.org/api/pyplot_summary.html)
puedes mirar "bar"
(http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.bar) para algo
como lo del vídeo. También le echaría un vistazo a "specgram"
(http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.specgram y
http://matplotlib.org/examples/pylab_examples/specgram_demo.html) y a cómo
animar las gráficas. Para esto último busca en Google "matplotlib animation" y
aparecen varios tutoriales.


Hablando de specgram (aunque creo que no es exactamente el efecto que 
Acústico quiere conseguir), mira la última parte de este artículo:


https://pybonacci.wordpress.com/2012/09/29/transformada-de-fourier-discreta-en-python-con-scipy/

(también en Pybonacci como Kiko pero esta vez el autor soy yo :P)
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/