posicionar el cursor en la consola

tny a.porrua en gmail.com
Mar Abr 3 20:05:07 CEST 2007


El mar, 03-04-2007 a las 19:05 +0200, Alexis Roda escribió:
> En/na tny ha escrit:
> > Alguién sabe como se hace un 
> > print at x,y; "loquesea"
> > o un 
> > locate y,x: print "loquesea"
> > en python, en la consola.
> > 
> > No he visto nada respecto a eso.
> 
> Tienes que utilizar alguna librería externa. curses es una opción y está 
> incluida en la librería estandar de python, el problema es que no 
> funciona (creo) en todas las plataformas.
> 
> > sería para sobreescribir en la pantalla en lugar de iniciar nuevas
> > lineas.
> > Porcentaje realizado y tiempo que queda para terminar una tarea.
> 
> Para este caso concreto puedes probar con algo tipo:
> 
> #!/usr/bin/env python -u
> import time
> import sys
> for valor in xrange(100) :
>    sys.stdout("\b\b\b%2i%%" % valor)
>    time.sleep(0.1)
> 
> es importante que stdout sea "unbuffered" (el -u)
> 

Muchas gracias
No me funciono así, pero me ha servido de ayuda, no se mo ocurrió lo de
\b, jejej
se te olvido el .write, y yo tuve que añadir un .flush

así sí me funcionó:
#!/usr/bin/env python -u
import time
import sys
for valor in xrange(100) :
   sys.stdout.write("\b\b\b%2i%%" % valor)
   sys.stdout.flush()
   time.sleep(0.05)

En Ubuntu 7.4 y  python 2.5 

> 
> 
> Saludos
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es

------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es