Buenas.<br><br>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. <br>
Para que se me entienda bien, si tengo la siguiente función:<br><br>def func1():<br>    for num in range(100):<br>        print num<br><br>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 &quot;1&quot;, sólo quiero que salgan esas lineas....<br>
<br>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:<br>
<br>inicial = sys.stdout<br>sys.stdout = FiltroSalida()<br>func1()<br>sys.stdout = inicial<br><br>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...<br>
<br>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?<br>Por otro lado existe alguna forma estándard o por lo menos alguna &quot;mejor práctica&quot; para implementar este tipo de objetos?<br>
Alguna sugerencia sobre como implementar el objeto? <br><br>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.<br>
<br>Cualquier sugerrencia será bienvenida<br><br>Saludos<br><br>-- <br>Hasta otra!!!<br>    Eduardo Ferro Aldama<br>    Alea Soluciones<br>    <br>    <a href="http://www.alea-soluciones.com">http://www.alea-soluciones.com</a>    <br>
    <a href="http://oss.alea-soluciones.com">http://oss.alea-soluciones.com</a><br>    <a href="http://doc.alea-soluciones.com">http://doc.alea-soluciones.com</a><br><br>