文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python如何实现梦幻钢琴小游戏

2023-07-05 06:18

关注

本篇内容主要讲解“Python如何实现梦幻钢琴小游戏”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python如何实现梦幻钢琴小游戏”吧!

一、环境准备

1)运行环境 

开发环境:Python3、Pycharm社区版、tkinter,部分自带的模块安装Python即可使用。 

2)模块安装 

第三方库的安装方式如下: 

一般安装:pip install +模块名  

镜像源安装:pip install -i https://pypi.douban.com/simple/+模块名 

二、代码展示

1)导入模块

import winsoundfrom tkinter import *

2)主程序

def doone():for i in range(1,11):i=i*500winsound.Beep(i,500)def submit():#读取乐谱并播放的函数music = list(map(str,u.get()))  #print(music)print(p.get())order =[[131,147,165,175,196,220,247],[262,296,330,349,392,440,494],[523,587,659,698,784,880,988],[1047,1175,1319,1397,1568,1760,1976]]match =['0','1','2','3','4','5','6','7','8','9']char =[ 'A','B','C','D']n = 1j=0k=0m=0time1 = [0 for x in range(10,1000)]order1 = [0 for x in range(0,1000)]order11 = [0 for x in range(0,1000)]orderm = [0 for x in range(0,1000)]for i in range(len(music)):if music[i] == '/':n=n+1if i==0:if music[i] == '0' and music[i+1] == '.' and music[i+2] == '5':time1[j]=0.5j=j+1t=0while t<10:if music[i] == match[t] and music[i+3] == '/':time1[j]=tj=j+1t=t+1else:if music[i] == '0' :time1[j]=0.5j=j+1for tp in range(1,9):if (music[i] == match[tp] and music[i-1] == '/' ):time1[j]=tpj=j+1for tn in range(0,4):if music[i] == char[tn]  :order1[m]=tnm=m+1for tt in range(1,9):if music[i] == match[tt] and ( music[i-1] == 'A' or music[i-1] == 'B' or music[i-1] == 'C' or music[i-1] == 'D') :order11[k]=ttk=k+1print(n)l=0while l< n:time1[l]=time1[l]*int(p.get())orderm[l]=order[order1[l]][order11[l]-1]time1[l]=int(time1[l])#print("时间,字母,顺序,音律以此为:")print(time1[l],   order1[l],  order11[l],orderm[l])l=l+1l=0while l <n:#print(orderm[l],time1[l])winsound.Beep(orderm[l],time1[l])l=l+1#图形界面root = Tk()root.title("电子钢琴简易版")frame = Frame(root)frame.pack(padx=8, pady=8, ipadx=4)lab1 = Label(frame, text="请输入乐谱:")lab1.grid(row=0, column=0, padx=5, pady=5, sticky=W)#u = StringVar()#ent1 = Entry(frame, textvariable=u)#ent1.grid(row=0, column=1, sticky='ew', columnspan=2)lab2 = Label(frame, text="请输入每个音节代表的时间(单位ms):")lab2.grid(row=1, column=0, padx=5, pady=5, sticky=W)p = StringVar()ent2 = Entry(frame, textvariable=p)ent2.grid(row=1, column=1, sticky='ew', columnspan=2)button = Button(frame, text="确认", command=submit, default='active')button.grid(row=2, column=1)button2 = Button(frame, text="退出", command=quit)button2.grid(row=2, column=2, padx=5, pady=5)button3 = Button(frame, text="第一题播放",command=doone)button3.grid(row=2, column=0)

三、效果展示

1)运行界面

Python如何实现梦幻钢琴小游戏

2)小程序截图

Python如何实现梦幻钢琴小游戏

到此,相信大家对“Python如何实现梦幻钢琴小游戏”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯