How to print one character at a time on one line?

Two tricks here, you need to use a stream to get everything in the right place and you also need to flush the stream buffer.

import time
import sys

def delay_print(s):
    for c in s:
        sys.stdout.write(c)
        sys.stdout.flush()
        time.sleep(0.25)

delay_print("hello world")

Leave a Comment