python winsound模块
(目标:出现交易下单、结束成交、数据中断等信号的时候,PC 发出声音提醒。)
python winsound模块
winsound是Python的内置包,无需下载。可以直接通过 import winsound 使用。 (其他第三方库都会在Python官方的pypi.python.org网站可以下载。)
winsound 模块提供了对Windows平台提供的基本声音播放机制的访问。它包括函数和几个常量。
1 winsound.Beep(frequency, duration)
Beep 电脑的扬声器。 频率参数指定声音的频率(赫兹),并且必须在37到32,767的范围内。 持续时间参数指定声音应持续的毫秒数。 如果系统不能发出扬声器,则会引发 RuntimeError。
2 winsound.MessageBeep([type=MB_OK])
从Platform API 调用基础 MessageBeep()函数。 这会播放注册表中指定的声音。 type参数指定要播放的声音。可能的值包括-1,MB_ICONASTERISK,MB_ICONEXCLAMATION,MB_ICONHAND,MB_ICONQUESTION和MB_OK,全部在下面描述。
值-1产生“simple beep”; 如果声音无法播放,这是最后的回退。
import winsound
winsound.Beep(1000,1000) def play(): # 检测文档中的possible sounds 哪些是你电脑的messageBeep
sounds=["-1","winsound.MB_ICONASTERISK","winsound.MB_ICONEXCLAMATION","winsound.MB_ICONHAND","winsound.MB_ICONQUESTION","winsound.MB_OK"]
for i in sounds:
try:
winsound.MessageBeep(eval(i))
except RuntimeError and NameError:
print("no {} messagebeep".format(i))
else:
print("has the sound flag{}".format(i))
play()
* eval 函数
eval是Python的一个内置函数,这个函数的作用是,返回传入字符串的表达式的结果。即变量赋值时,等号右边的表示是写成字符串的格式,返回值就是这个表达式的结果。
eval(expression[, globals[, locals]])
expression : 表达式。
globals : 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals : 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
3 winsound.PlaySound(sound, flags)
PlaySound()
从平台API 调用底层函数。声音参数可以是文件名,音频数据作为一个字符串,或None
。它的解释取决于标志的值,它可以是下面描述的常量的按位或运算组合。如果声音参数是None
,则任何当前正在播放的波形声音都会停止。如果系统显示错误,则引发RuntimeError
。
* winsound.SND_FILENAME
支持WAV文件。该sound 参数是一个WAV文件的名称。不要与SND_ALIAS
一起使用。
* winsound.SND_ALIAS
该声音参数是从注册表中声音的关联名称。如果注册表中不包含此类名称,则除非SND_NODEFAULT
另外指定,否则请播放系统默认声音。如果没有登录默认声音,请提高RuntimeError
。不要与SND_FILENAME
一起使用。
所有Win32系统至少支持以下内容; 大多数系统支持更多:
PlaySound() 名称 |
相应的控制面板声音名称 |
---|---|
'SystemAsterisk' |
Asterisk |
'SystemExclamation' |
Exclamation |
'SystemExit' |
Exit Windows |
'SystemHand' |
Critical Stop |
'SystemQuestion' |
Question |
示例:
import winsound
# Play Windows exit sound.
winsound.PlaySound("SystemExit", winsound.SND_ALIAS) # Probably play Windows default sound, if any is registered (because
# "*" probably isn't the registered name of any sound).
winsound.PlaySound("*", winsound.SND_ALIAS)
声音参数 | 相关解释 |
winsound.SND_LOOP | 反复播放声音。该SND_ASYNC 标志也必须用于避免阻塞。不能用于SND_MEMORY 。 |
winsound.SND_MEMORY | 声音参数PlaySound() 是WAV文件的存储器中的图像,为一个字符串。注意这个模块不支持异步播放内存映像,所以这个标志的组合SND_ASYNC 将会提升RuntimeError |
winsound.SND_PURGE |
停止播放指定声音的所有实例。注意现代Windows平台不支持此标志。 |
winsound.SND_ASYNC | 立即返回,允许声音异步播放。 |
winsound.SND_NODEFAULT | 如果找不到指定的声音,请不要播放系统默认声音。 |
winsound.SND_NOSTOP | 不要中断当前播放的声音。 |
winsound.SND_NOWAIT |
如果声音驱动程序正忙,请立即返回。注意现代Windows平台不支持此标志。 |
winsound.MB_ICONASTERISK | 播放SystemDefault 声音。 |
winsound.MB_ICONEXCLAMATION | 播放SystemExclamation 声音。 |
winsound.MB_ICONHAND | 播放SystemHand 声音。 |
winsound.MB_ICONQUESTION | 播放SystemQuestion 声音。 |
winsound.MB_OK | 播放SystemDefault 声音。 |
最新文章
- java类的初始化块/执行顺序,实例化对象数据赋值
- 点击表格tr同时点击checkbox
- 写程序该选Mac 还是PC ?(转)
- json串转对象
- Mac android 开发 sdk配置和手机连接
- Saltstack系列2:Saltstack远程执行命令
- 64位开源处理器Rocket该人士介绍
- HTML5 File 对象
- Android使用Apache的httpmime包post提交数据
- HDU 3255 Farming
- 海康/大华 IpCamera RTSP地址和格式
- Xamarin开发笔记—WebView双项事件调用
- [国嵌攻略][072][Linux应用程序地址布局]
- Windows Server 2012 蓝屏 Wpprecorder.sys 故障
- python使用urllib2 http 下载参数的try catch
- Ajax 请求头中常见content-type
- linux基础之用户登录信息查看命令
- appium框架感悟
- Matplotlib新手上路(中)
- select 语法
热门文章
- SSM框架中IoC、DI与AOP的理解
- 解决Eclipse中新建jsp文件ISO8859-1 编码问题
- 使用@ConditionalOnProperty注解
- 八、asynicio模块以及爬虫应用asynicio模块(高性能爬虫)
- Codeforces Round #569 (Div. 2) B. Nick and Array
- js dom 添加类
- PID221 / 烦人的幻灯片☆ x
- 【BZOJ5249】IIIDX(贪心,线段树)
- 苹果cms开启防红跳转后,提示模板文件不存在解决方法
- [BZOJ2669][CQOI2012]局部极小值:DP+容斥原理