Re: [Python-es] Sangrias en los programas

2010-02-21 Por tema José Luis Torre Hernández
El 21 de febrero de 2010 02:41, lasizoillo  escribió:

> El día 21 de febrero de 2010 02:06, José Luis Torre Hernández
>  escribió:
> > Hola a t...@s:
> >
> > Me gustaría saber cómo se pueden mostrar los programas en los correos con
> > los márgenes adecuados ya que en la mayoría de ellos veo ejemplos de
> código
> > similares a los siguientes:
> >
> >
> > for i in (1, 2 , 3, 4):
> > procesar(i)
> >
> > en lugar de algo similar a lo siguiente:
> >
> >
> > for i in (1, 2 , 3, 4):
> > procesar(i)
> >
> > No se si es que luego se eliminan los espacios en blanco iniciales o si
> se
> > están utilizando tabuladores en los programas y luego desaparecen de
> forma
> > automática en el cuerpo del mensaje.
> >
>
> Otra hipotesis es que sea porque usan html para componer los mensajes.
>

No lo se. En la configuración de gmail no veo si se utiliza  html en la
recepción a pesar de haber revisado la configuración.

Gracias por la pista.

Saludos
José Luis Torre
www.ehu.es
___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Sangrias en los programas

2010-02-21 Por tema Hernan Foffani

El 21/02/2010, a las 11:25, José Luis Torre Hernández escribió:

> 
> 
> El 21 de febrero de 2010 02:41, lasizoillo  escribió:
> El día 21 de febrero de 2010 02:06, José Luis Torre Hernández
>  escribió:
> > Hola a t...@s:
> >
> > Me gustaría saber cómo se pueden mostrar los programas en los correos con
> > los márgenes adecuados ya que en la mayoría de ellos veo ejemplos de código
> > similares a los siguientes:
> >
> >
> > for i in (1, 2 , 3, 4):
> > procesar(i)
> >
> > en lugar de algo similar a lo siguiente:
> >
> >
> > for i in (1, 2 , 3, 4):
> > procesar(i)
> >
> > No se si es que luego se eliminan los espacios en blanco iniciales o si se
> > están utilizando tabuladores en los programas y luego desaparecen de forma
> > automática en el cuerpo del mensaje.
> >
> 
> Otra hipotesis es que sea porque usan html para componer los mensajes.
> 
> No lo se. En la configuración de gmail no veo si se utiliza  html en la 
> recepción a pesar de haber revisado la configuración.
> 


Hombre... Si el mensaje original fue creado con HTML poco podrás hacer de tu 
parte.
Tu sólo procura que al redactar tus mensajes no tienes marcado "Texto 
enriquecido".
Con GMail mucho mas no puedes hacer...


___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] Cómo filtrar/procesar la salida a co nsola de una función, sin modificar la funció n

2010-02-21 Por tema Eduardo Ferro
Buenas.

Necesito poder filtrar la salida por consola de una función a la que llamo,
sin que esta función se vea alterada. Es para una especie de interprete de
comandos, que puede tener en un momento dado activados filtros  o no, o
tener activado un pager o no.
Para que se me entienda bien, si tengo la siguiente función:

def func1():
for num in range(100):
print num

Cuando ejecute la función saldrian las 100 lineas numeradas, pero si la
llamo y tengo configurado un paginador, quisiera que se parase cada 25
lineas y esperase una tecla, o si tengo puesto un filtro para que salgan las
lineas que contengan un "1", sólo quiero que salgan esas lineas

Ahora mismo lo tengo hecho con un objeto que simula ser un fichero de salida
y que hace las funciones de filtro, y lo que hago es cambiar el sys.stdout
por ese objeto, antes de realizar la llamada, y restaurarlo una vez
completada la llamada. Algo similar a:

inicial = sys.stdout
sys.stdout = FiltroSalida()
func1()
sys.stdout = inicial

El caso es que estoy teniendo algunos problemas con la implementación de  la
clase FiltroSalida y en algunos casos creo que pierdo algo de la salida...

La pregunta es, si la forma de hacer este filtrado sin modificar la función
es hacer un filtro para el sys.stdout o existe alguna otra forma de hacerlo?
Por otro lado existe alguna forma estándard o por lo menos alguna "mejor
práctica" para implementar este tipo de objetos?
Alguna sugerencia sobre como implementar el objeto?

Ahora el objeto FiltroSalida implementa el write, y el flush, pero estoy
teniendo problemas con la gestión de los buffers... motivo por el que me
planteaba si toda la idea era correcta o no.

Cualquier sugerrencia será bienvenida

Saludos

-- 
Hasta otra!!!
   Eduardo Ferro Aldama
   Alea Soluciones

   http://www.alea-soluciones.com
   http://oss.alea-soluciones.com
   http://doc.alea-soluciones.com
___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Cómo filtrar/procesar la salida a co nsola de una función, sin modificar la función

2010-02-21 Por tema Daniel Garcia Moreno
El dom, 21-02-2010 a las 22:39 +0100, Eduardo Ferro escribió:
> Buenas.
> 
> Necesito poder filtrar la salida por consola de una función a la que
> llamo, sin que esta función se vea alterada. Es para una especie de
> interprete de comandos, que puede tener en un momento dado activados
> filtros  o no, o tener activado un pager o no. 
> Para que se me entienda bien, si tengo la siguiente función:
> 
> def func1():
> for num in range(100):
> print num
> 
> Cuando ejecute la función saldrian las 100 lineas numeradas, pero si
> la llamo y tengo configurado un paginador, quisiera que se parase cada
> 25 lineas y esperase una tecla, o si tengo puesto un filtro para que
> salgan las lineas que contengan un "1", sólo quiero que salgan esas
> lineas
> 
> Ahora mismo lo tengo hecho con un objeto que simula ser un fichero de
> salida y que hace las funciones de filtro, y lo que hago es cambiar el
> sys.stdout por ese objeto, antes de realizar la llamada, y restaurarlo
> una vez completada la llamada. Algo similar a:
> 
> inicial = sys.stdout
> sys.stdout = FiltroSalida()
> func1()
> sys.stdout = inicial
> 
> El caso es que estoy teniendo algunos problemas con la implementación
> de  la clase FiltroSalida y en algunos casos creo que pierdo algo de
> la salida...

También tienes que tener en cuenta la salida de error, sys.stderr. Lo
mismo lo que se te escapa es eso.



signature.asc
Description: Esta parte del mensaje está firmada digitalmente
___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Cómo filtrar/procesar la salida a cons ola de una función, sin modificar la función

2010-02-21 Por tema Soto
Buenas.
A ver, dices que no quieres que tu función se vea afectada.
Si pudieras cambiar esos arcaicos print por algo más currado quizás podrías
arreglarlo. No sé cuál tu intención pero existe el módulo
logging  con
el cual puedes crear diferentes manejadores que te permiten establecer
algunos parametros. Jugando con eso puedes establecer a partir de que nivel
de error dentro de los que permite dicha librería sea el que se visualice
por pantalla.

Espero que te sea de ayuda.

__
Cualquier idiota puede escribir código que un ordenador pueda entender.
Los buenos programadores escriben código que las personas puedan entender.

– Martin Fowler


El 21 de febrero de 2010 22:39, Eduardo Ferro
escribió:

> Buenas.
>
> Necesito poder filtrar la salida por consola de una función a la que llamo,
> sin que esta función se vea alterada. Es para una especie de interprete de
> comandos, que puede tener en un momento dado activados filtros  o no, o
> tener activado un pager o no.
> Para que se me entienda bien, si tengo la siguiente función:
>
> def func1():
> for num in range(100):
> print num
>
> Cuando ejecute la función saldrian las 100 lineas numeradas, pero si la
> llamo y tengo configurado un paginador, quisiera que se parase cada 25
> lineas y esperase una tecla, o si tengo puesto un filtro para que salgan las
> lineas que contengan un "1", sólo quiero que salgan esas lineas
>
> Ahora mismo lo tengo hecho con un objeto que simula ser un fichero de
> salida y que hace las funciones de filtro, y lo que hago es cambiar el
> sys.stdout por ese objeto, antes de realizar la llamada, y restaurarlo una
> vez completada la llamada. Algo similar a:
>
> inicial = sys.stdout
> sys.stdout = FiltroSalida()
> func1()
> sys.stdout = inicial
>
> El caso es que estoy teniendo algunos problemas con la implementación de
> la clase FiltroSalida y en algunos casos creo que pierdo algo de la
> salida...
>
> La pregunta es, si la forma de hacer este filtrado sin modificar la función
> es hacer un filtro para el sys.stdout o existe alguna otra forma de hacerlo?
> Por otro lado existe alguna forma estándard o por lo menos alguna "mejor
> práctica" para implementar este tipo de objetos?
> Alguna sugerencia sobre como implementar el objeto?
>
> Ahora el objeto FiltroSalida implementa el write, y el flush, pero estoy
> teniendo problemas con la gestión de los buffers... motivo por el que me
> planteaba si toda la idea era correcta o no.
>
> Cualquier sugerrencia será bienvenida
>
> Saludos
>
> --
> Hasta otra!!!
>Eduardo Ferro Aldama
>Alea Soluciones
>
>http://www.alea-soluciones.com
>http://oss.alea-soluciones.com
>http://doc.alea-soluciones.com
>
>
> ___
> Python-es mailing list
> [email protected]
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/