forked from lukman467/coding
-
Notifications
You must be signed in to change notification settings - Fork 0
/
sempurna.py
43 lines (36 loc) · 1.13 KB
/
sempurna.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
33
34
35
36
37
38
39
40
41
42
43
import time
from threading import Thread, Lock
import sys
lock = Lock()
def animate_text(text, delay=0.1):
with lock:
for char in text:
sys.stdout.write(char)
sys.stdout.flush()
time.sleep(delay)
print()
def sing_lyric(lyric, delay, speed):
time.sleep(delay)
animate_text(lyric, speed)
def sing_song():
lyrics = [
("Janganlah kau tinggalkan diri ku", 0.1),
("Tak kan mampu menghadapi semua", 0.12),
("Hanya bersamamu ku akan bisa", 0.11),
("Kau adalah darah ku", 0.10),
("Kau adalah jantung ku", 0.10),
("Kau adalah hidup ku lengkapi diri ku", 0.10),
("Oh sayangku kau begitu", 0.1),
("Sempurnaaaaaaaaaaaaaaaaa", 0.1)
]
delays = [0.3, 4.5, 9.3, 14.1, 18.8, 23.0, 28.0, 34.5]
threads = []
for i in range(len(lyrics)):
lyric, speed = lyrics[i]
t = Thread(target=sing_lyric, args=(lyric, delays[i], speed))
threads.append(t)
t.start()
for thread in threads:
thread.join()
if __name__ == "__main__":
sing_song()