今天学了python,参考练习题,本来是找倍数的,但是想到找到之后发个提示音岂不是很有意思,然后就找到了这个函数,进而想到做个7阶音符玩玩。

7个音符差别在哪

关于乐理知识就不过多介绍了,我也是一个音乐小白。我们日常所说的7个音符主要是频率不同,这样也造就了我们的音乐世界。
低音音符:
do 262
re 294
mi 330
fa 349
so 392
la 440
si 494

中音 do 523

Beep函数介绍

##Beep(Freq,Duration)
##Freq:频率
##Duration:时长,以毫秒计

实际操作一下

1.怎样调用Beep函数

import winsound
winsound.Beep(262,1000) #频率为262,时长为1s;实际时长似乎要偏少一些

2.程序实现

##对应7阶音符
##思路:1-8的数对8取余,余1-7,对应7阶乐符;余0时,对应高阶do的音符
import winsound
for i in range(1,9):if i%8==1:winsound.Beep(262,1000)elif i%8==2:winsound.Beep(294,1000)elif i%8==3:winsound.Beep(330,1000)elif i%8==4:winsound.Beep(349,1000)elif i%8==5:winsound.Beep(392,1000)elif i%8==6:winsound.Beep(440,1000)elif i%8==7:winsound.Beep(494,1000)else:winsound.Beep(523,1000)

这就是我用python做的第一个有意思的程序啦
展望:还可以用这个函数对已经编码好的简谱进行演奏,也就基本上实现了一个简陋播放器的原型;现在要做的就是学习乐理知识,然后将什么音调,节拍写成程序。
谢谢各位阅读,如有错误,还望不吝指教!

参考文章:
1.《C++中发声函数Beep详解》 weixin_30295091
2.《python控制电脑Beep()蜂鸣器函数制作简易播放器》 技术宅AI代码控加粗样式
3.《VC用发音函数Beep()播放简易音乐》 C_S_D_N_USER

python入门系列1——用Beep函数手动实现7个音符的播放相关推荐

  1. 音乐python播放函数-python入门系列1——用Beep函数手动实现7个音符的播放

    今天学了python,参考练习题,本来是找倍数的,但是想到找到之后发个提示音岂不是很有意思,然后就找到了这个函数,进而想到做个7阶音符玩玩. 7个音符差别在哪 关于乐理知识就不过多介绍了,我也是一个音 ...

  2. 【Python入门系列】一个简单的数据分析问题——用Pandas揭秘美国选民的总统喜好

    阿里天池训练营学习笔记 学习链接~AI训练营Python 本文将展示一个实际操作,利用Pandas对美国大选的一些数据进行处理,题目的详细内容请点击此处~[Python入门系列]用Pandas揭秘美国 ...

  3. 十二章 Python入门系列之字典

    系列文章目录 第一章 Python入门系列之介绍 第二章 Python入门系列之PyCharm 第三章 Python入门系列之注释 第四章 Python入门系列之变量 第五章 Python入门系列之输 ...

  4. 第八章 Python入门系列之循环

    系列文章目录 第一章 Python入门系列之介绍 第二章 Python入门系列之PyCharm 第三章 Python入门系列之注释 第四章 Python入门系列之变量 第五章 Python入门系列之输 ...

  5. 视频教程-Python入门-系列游戏开发/太空阻击-Python

    Python入门-系列游戏开发/太空阻击 20年软件项目开发管理经验 工信部人才交流中心特聘专家讲师 日本U-CAN在线教育特聘主任讲师 国家十二·五规划软件工程教材作者(书:清华大学出版社出版) 中 ...

  6. 10分钟带你了解python_10分钟Python入门系列教程及学习资源分享

    本期分享笔记内容 归档此前入门教程文章,方便查看 10分钟带你Python入门的特点 简单谈下如何寻找Python学习资源 关于分享Python学习资源的分享问题 本人对于Python学习创建了一个小 ...

  7. python入门系列:函数

    引言 将一段代码集中到一块,起一个名字,下次可以根据这个名字再次使用这个代码块. 作用: 方便代码重用 分解任务,简化程序逻辑 使代码更加模块化 函数的参数 所有的传参方式都是传引用,注意列表做参数和 ...

  8. python入门系列:包和模块

    基本概念 模块:将一组功能相关的代码写入一个单独的.py文件中,需要时进行导入,这个文件就是模块. 包:有层次的文件目录结构,内部有多个模块或多个子包,一般要有init.py这个文件(3.3+ 的版本 ...

  9. python入门系列:深入Python的set和dict

    dict常用操作 引言 clear(): 清空字典 copy(): 返回一个浅拷贝 fromkeys(): 将可迭代对象中的每一个元素作为key和同一个value拼成字典 get(): 根据key返回 ...

最新文章

  1. 预加载系列一:DNS Prefetching 的正确使用姿势
  2. 设计大神发布 Windows 20 概念视频,这才是用户所需要的操作系统?
  3. golang网站错误处理
  4. android开发我的新浪微博客户端-用户授权页面功能篇(3.2)
  5. win 2008 64位IIS7出现数据库链接出错的解决办法
  6. js 各种事件 如:点击事件、失去焦点、键盘事件等
  7. C++控制台输出中文时乱码的解决方案
  8. 1024 Palindromic Number (25 分)大整数相加+会问+reverse倒置
  9. java注解拦截_轻松实现java拦截器+自定义注解
  10. Excel 快速填充空白
  11. 网络设备商网管软件解决方案
  12. 雷电模拟器一直android正在启动,雷电安卓模拟器启动后没反应、无法启动、闪退的3种解决办法-针对2020年4月4号出现的...
  13. 怎么把word压缩到最小
  14. 【马司机带带我】君子日三省吾身
  15. JavaScript百炼成仙 1.18 函数七重关之一 (函数定义)
  16. vue 页面使用两套el-form表单并且嵌套使用el-checkbox
  17. 小号系统搭建接口教程
  18. 安装apache遇到You don’t have permission to access this resource. 原因与解决方法
  19. 优秀!华为诺亚方舟实验室联合中山大学发布新一代半/自监督的2D基准数据集SODA10M
  20. MongoDB3:复制集

热门文章

  1. linux文件的三个时间atime,mtime,ctime以及查找和修改方法
  2. 阿里50亿参数AI画画模型火了!将图像拆分再自由重组,达摩院副院长率队打造...
  3. Mybatis框架下批量修改数据库,你要绕过这些坑
  4. JavaEE知识体系梳理
  5. 3ml 5ml 杯子各一个,拼出 4ml 的容量
  6. 一次函数在c语言中,一次函数练习题及答案(较难)
  7. Unique ID策略
  8. bootstraptable之uniqueId
  9. C语言模块化开发,深入多文件编程
  10. 2008升级到2012