从
winsound
documentation
在
SND_ASYNC
:
winsound.SND_ASYNC
Return immediately, allowing sounds to play asynchronously.
所以
SNDY-ASYNC
flag调用
PlaySound
异步。也就是说,它不会等到声音完成后再返回。当您首先进行调用,然后有效地在显示进度条的情况下休眠2秒时,此操作很好,因为在程序继续执行时,声音有时间播放。
但是当你在程序完成后用这种方式播放声音时,
播放声音
函数立即返回,然后程序就没有其他事情可做了,所以它退出,没有时间播放声音。
可以通过传递该行为来更改该行为。
winsound.SND_FILENAME
旗到
播放声音
相反,它会打电话给
同步的
,等待声音播放完毕再返回:
from tqdm import tqdm
import time
import winsound
for i in tqdm(range(100)):
time.sleep(0.02)
winsound.PlaySound("Nastepna.wav", winsound.SND_FILENAME)