Tools
首页
画图
音乐
采集
记事
博客
实验室
登录
lypeng
146
文章
11
分类
46
记事
分类
生活-[23]
Linux-[24]
前端-[9]
数据库-[16]
PHP-[31]
git-[7]
其他-[6]
python-[20]
算法-[4]
React-Native-[4]
中草药-[2]
广告位1
广告位2
首页
/ python
返回列表
用python写一个弹钢琴的程序
阅读:556
发布:2021-08-17
作者:lypeng
```python # -*- coding: utf-8 -*- """ Created: 2020-02-03 @author: lypeng """ import pygame pygame.init() pygame.mixer.init() screen = pygame.display.set_mode((1372, 383)) pygame.display.set_caption('piano') background = pygame.image.load('c.jpg') screen.blit(background, (0,0)) def write(screen,s,x,y,center=0): f = pygame.font.SysFont('simkai.ttf',20) text = f.render(s,True,pygame.Color("red")) screen.blit(text,(x-center*text.get_width()/2,y)) def load_wav(): wav_list = [] for i in range(1, 8): name_str = 'di/a ('+str(i)+').wav' wav_list.append(pygame.mixer.Sound(name_str)) for i in range(1, 8): name_str = 'zh/'+str(i)+'.wav' wav_list.append(pygame.mixer.Sound(name_str)) for i in range(1, 8): name_str = 'gao/a ('+str(i)+').wav' wav_list.append(pygame.mixer.Sound(name_str)) for i in range(1, 8): name_str = 'gao/'+str(i)+'.wav' wav_list.append(pygame.mixer.Sound(name_str)) return wav_list def touch_key(wav_list): key = [ pygame.K_z, pygame.K_x, pygame.K_c, pygame.K_v, pygame.K_b, pygame.K_n, pygame.K_m, \ pygame.K_a, pygame.K_s, pygame.K_d, pygame.K_f, pygame.K_j, pygame.K_k, pygame.K_l, \ pygame.K_q, pygame.K_w, pygame.K_e, pygame.K_r, pygame.K_u, pygame.K_i, pygame.K_o, \ pygame.K_1, pygame.K_2, pygame.K_3, pygame.K_4, pygame.K_7, pygame.K_8, pygame.K_9 ] d = pygame.image.load('d.jpg') while True: for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() elif event.type == pygame.KEYDOWN: for e in key: if e == event.key: screen.blit(background, (0,0)) wav_list[key.index(e)].play() m = int(key.index(e)) screen.blit(d, (m*49,122)) break pygame.display.update() def main(): wav_list = load_wav() touch_key(wav_list) if __name__ == '__main__': main() ``` 当然这个不完整,只是从88音中选了低中高一部分! 附赠钢琴88音素材,有WAV与MP3两个版本,/uploads/lypeng/196/钢琴88键素材.zip?_blank 效果预览: [](/uploads/lypeng/196/c.jpg "piano") 完整文件: /other/piano.zip?_blank 网上高级版推荐: **暴走钢琴:https://www.baozoupiano.cn/?_blank**
------本文结束
感谢阅读------
上一篇:
python数据类型
下一篇:没有了