专业的医疗网站建设/推广营销
Python实例007:一个有计时声音的计时器
一个带有计时声音的计时器主要调用time模块、winsound播放音频的方法。其中:
- time.sleep()函数中的参数是以秒为单位;
- winsound.Beep(f,t) # 第1个参数f是频率,频率越大,音调越尖,其范围为[37,32767]的正整数;第2个参数t是声音持续时间,单位是毫秒。winsound.PlaySound(‘MusicFileName.wav’, flags=1)可以播放wav格式的音频文件。
其程序如下:
#!/usr/bin/env python3
# -*- coding:utf-8 -*-import time # 调用time模块
import winsound # 调用winsound播放音频的方法Timer = input('请输入计时段的时分秒(如hh:mm:ss):')
# split(':')函数利用分隔符(,/;/空格/-等)将每个字符进行分隔
Timer = Timer.split(':')
# for循环将每个字符转换为int值
for i in range( len(Timer) ) :Timer[i] = int( Timer[i] )
hh = Timer[0]; mm = Timer[1]; ss = Timer[2]
Sum_ss = hh * 3600 + mm * 60 + ss # 计算总的秒数print('\n计时段共%d秒,计时开始:' % Sum_ss)
Falg = 1; Counter_ss = 0
while Falg :print ( time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())), end='\t\t')print ('还剩%d秒' % ( Sum_ss - Counter_ss - 1 ))winsound.Beep(888,200) # winsound.Beep(f,t) # 第1个参数f是频率,频率越大,音调越尖,其范围为[37,32767]的正整数;第2个参数t是声音持续时间,单位是毫秒。Counter_ss += 1if (Counter_ss == Sum_ss) :Falg = 0print('计时时间到!')time.sleep(0.8) # 使用time模块的sleep()函数,暂停 800 毫秒,加上声音持续的200毫秒,刚好延迟1秒
运行结果如下:
请输入计时段的时分秒(如hh:mm:ss):00:00:05计时段共5秒,计时开始:
2019-02-11 21:39:38 还剩4秒
2019-02-11 21:39:39 还剩3秒
2019-02-11 21:39:40 还剩2秒
2019-02-11 21:39:41 还剩1秒
2019-02-11 21:39:42 还剩0秒
计时时间到!
- 致谢
若对大家有用,感谢点赞或评论;若有不足或补充之处,也感谢大家评论进行指正,后期我将对本文进行补充完善。相信这是互相进步的开始!