je voudrais faire quelque chose du style
import time
print "blablabla.....",
time.sleep(1)
print "taratata!"
et que ça me donne au final
"blablabla..." puis, une seconde plus tard "taratata" qui viens se coller derrière...
seulement ça attends la seconde et ça affiche tout d'un coup...
y'a moyen ou pas ?
si oui comment? (pour ce qui repondent juste "oui")
merci
# heu...
Posté par Treepwood . Évalué à 1.
désolé je suis fatigué
c'est qu'en fait je pensais à une manière de faire le schmile et je vous en ai marqué une autre
ce à quoi je pensais originelement :
import time
print "blablabla..."
time.sleep(1)
print "blablabla...taratata"
mais c'est plus lourd et ça doit etre pour ça que j'ai fait l'échange automatiquement sans y penser...
je suis pas fou !
si quelqu'un a une solution quand même à l'un ou l'autre des façons ...
[^] # Re: heu...
Posté par Treepwood . Évalué à 1.
import time
print "blablabla...",
time.sleep(1)
print "\r"
print "blablabla...taratata"
pitié pas de moinssage
[^] # Re: heu...
Posté par Sebastien . Évalué à 1.
# flush
Posté par Antoine Reilles (site web personnel) . Évalué à 3.
python "flushe" automatiquement quand tu ajoute un retour chariot, c'est pourquoi ta seconde solution marche.
Tu peut aussi forcer python a ne pas bufferiser stdout (option -u en ligne de commande)
ou le former dans le programme a flusher quand tu veux, avec
import time,sys
print "aa"
sys.stdout.flush()
time.sleep(1)
print "bb"
sys.stdout.flush()
les "aa" et "bb" s'afficheront dans les temps.
(en fait, ça se passe en gros comme en C...)
# C'est ça que tu veux faire ?
Posté par starcom . Évalué à 1.
je fais:
et ça à l'air de correspondre à ce que tu souhaites.
Si c'est le cas, tant mieux ! ;D
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.