Никогда не используйте system()
- ни на каком языке, не только Python - без строки, которая была явно написана и проверена на правильность, безопасный сценарий оболочки и в котором не может быть подставлено неконтролируемое содержимое .
Когда вам нужно передать аргументы, используйте вместо этого модуль subprocess
:
#!/usr/bin/env python3
import subprocess
def playSong():
message = "it's time to drink water and, take a rest for some minutes."
#filepath = "/home/leader/Downloads/anywhere.mp3"
p = subprocess.Popen(['espeak', message])
p.wait()
playSong()
В противном случае у вас будет очень плохой день, когда кто-то попытается воспроизвести сообщение Do not ever run $(rm -rf ~)
(или его более заведомо вредоносный вариант $(rm -rf ~)'$(rm -rf ~)'
).