-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtoo-sweet.py
32 lines (27 loc) · 865 Bytes
/
too-sweet.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import time
import sys
lyrics = [
("My coffee black and my bed at three", 0.11),
("You're too sweet for me", 0.14),
("You're too sweet for me", 0.14),
("I take my whiskey neat", 0.14),
("My coffee black and my bed at three", 0.12),
("You're too sweet for me", 0.12),
("You're too sweet for me", 0.12),
]
delays = [4.0, 4.0, 4.0, 4.0, 1.5, 4.0, 1.5]
def animate_text(text, char_delay):
for char in text:
sys.stdout.write(char)
sys.stdout.flush()
time.sleep(char_delay)
sys.stdout.write('\n')
sys.stdout.flush()
def main():
for i, (text, char_delay) in enumerate(lyrics):
animate_text(text, char_delay)
if i < len(lyrics) - 1:
next_line_delay = max(0, delays[i] - len(text) * char_delay)
time.sleep(next_line_delay)
if __name__ == "__main__":
main()