Wie man ein Zeichen auf einer Zeile ausdruckt?

Wie würde man den String "hallo Welt" auf eine Zeile drucken, aber ein Zeichen zu einer Zeit, so dass es eine Verzögerung zwischen dem Druck jedes Buchstabens gibt? Meine Lösungen haben entweder ein Zeichen pro Zeile oder ein verzögertes Drucken der gesamten Saite auf einmal. Dies ist das nächste, was ich bekommen habe.

import time string = 'hello world' for char in string: print char time.sleep(.25) 

3 Solutions collect form web for “Wie man ein Zeichen auf einer Zeile ausdruckt?”

Zwei Tricks hier, du musst einen Stream benutzen, um alles an der richtigen Stelle zu bekommen und du musst auch den Stream-Puffer spülen.

 import time import sys def delay_print(s): for c in s: sys.stdout.write( '%s' % c ) sys.stdout.flush() time.sleep(0.25) delay_print("hello world") 
 import sys import time string = 'hello world\n' for char in string: sys.stdout.write(char) sys.stdout.flush() time.sleep(.25) 

Hier ist ein einfacher Trick für Python 3, da Sie den Endparameter der print angeben können:

 >>> import time >>> string = "hello world" >>> for char in string: print(char, end='') time.sleep(.25) hello world 

Habe Spaß! Die Ergebnisse sind jetzt animiert!

Python ist die beste Programmiersprache der Welt.