A typical solution could be to delay the printing out of characters in a text. You can go with a fixed delay (0.1 seconds in my example below), or you can randomize the delay (e.g., between 0.05 and 0.2 seconds), or assign a specific delay for specific cases.
It's important to note for the below example that one must flush the standard output, otherwise nothing will be printed until the whole text is done, as Python tries to print when its internal buffer is ready, instead of printing individual characters (for performance reasons).
This should work:
import time;
import sys;
text = "The man in black fled across the desert and the gunslinger followed."
for ch in text:
time.sleep(0.1)
sys.stdout.write(ch)
sys.stdout.flush()