Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: deletethisaccount en Marzo 20, 2017, 03:55:04 PM

Título: ¿Cómo cambiar un texto en Python?
Publicado por: deletethisaccount en Marzo 20, 2017, 03:55:04 PM
Hola,tenia esta duda y no sabria como hacerlo,sale en un episodio de mr robot,y es como puedo cambiar un texto sin tener que volverlo a printear,
que si tengo
            1 de 10000

que lo pueda cambiar a:
            2 de 10000


Sin tener que volver a printearlo.
Título: Re:como puedo hacer esto con python
Publicado por: Cr4id3r en Marzo 20, 2017, 04:58:21 PM
Buenas tardes BadB0y_4,
No entiendo demasiado bien tu pregunta, pero mira si algo de esto te sirve


import os

for number in range(0,1000):
    print "%s de 1000" % number
    raw_input("Pulsa ENTER para continuar...")
    os.system("clear")



Un saludo! ;)
Título: Re:como puedo hacer esto con python
Publicado por: Eschiclers en Marzo 20, 2017, 05:05:01 PM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Buenas tardes BadB0y_4,
No entiendo demasiado bien tu pregunta, pero mira si algo de esto te sirve


import os

for number in range(0,1000):
    print "%s de 1000" % number
    raw_input("Pulsa ENTER para continuar...")
    os.system("clear")



Un saludo! ;)

Esta opción la verdad puede ser un poco inutil en algunas veces, cómo por ejemplo si quiere tener una pantalla sin borrar cada vez que cambia una línea, porque sería tedioso hacer un clear siempre que quiera actualizar, lo que tu quieres hacer, lo puedes buscar dependiendo de tu versión de python, con el nombre de print flush en google, por lo general con un '\r' en el print, sobreescribe la misma linea, busca sobre el tema y tu versión de python
Título: Re:como puedo hacer esto con python
Publicado por: Cr4id3r en Marzo 20, 2017, 05:34:12 PM
Buenas Eschiclers,
¿Te refieres a que el buffer de la consola consumiria demasiado?
Título: Re:¿Cómo cambiar un texto en Python?
Publicado por: noxonsoftwares en Marzo 21, 2017, 01:21:40 AM
prueba con esto


for i in range(0,1000):
    x=0
    print x+i, "de 1000"
Título: Re:¿Cómo cambiar un texto en Python?
Publicado por: lug en Marzo 21, 2017, 02:27:40 AM
Yo lo hago de esta manera.

Código (python) [Seleccionar]
import sys
import time

for i in range(0,1000):
time.sleep(1)#Espera un segundo para hacer la imprimir en la terminar para poder ver lo que se imprime.
sys.stdout.write("\r%d de 1000" % (i))#Aquí la "magia"
sys.stdout.flush()#Limpia el buffer
Título: Re:¿Cómo cambiar un texto en Python?
Publicado por: Eschiclers en Marzo 21, 2017, 03:09:19 AM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Yo lo hago de esta manera.

Código (python) [Seleccionar]
import sys
import time

for i in range(0,1000):
time.sleep(1)#Espera un segundo para hacer la imprimir en la terminar para poder ver lo que se imprime.
sys.stdout.write("\r%d de 1000" % (i))#Aquí la "magia"
sys.stdout.flush()#Limpia el buffer


Esta es la forma más adecuada de hacerlo, con los flush.