第110讲用Python制作音乐播放器

2019-02-10 05:24:19 / 打印

春节是中国最传统的节日,每逢这个时候大家都要回家过年。相信大部分人年过的很愉快吧,拜年走亲访友,家人一起吃团圆饭,小孩子玩烟花爆竹,大伙一起坐在火炉旁聊家常,聊今年工作怎么样,聊处对象了没有,聊介绍对象的,聊春节晚会的。今年春节晚会好像也没什么特别的,除了刘谦的魔术有点印象。当然,除了中央电视台春晚,其他卫视的春晚有的也不错,感觉某卫视的几首歌还不错,听着听着,于是想到制作一个简约播放器来播放这些音乐。

这里下载了三首歌曲:

于是用Python写了一个简单的音乐播放器:

界面效果图如下:

kmplayer旋转视频,中国有用户使用厂商。)

左上角 显示正在播放的音乐名字,然后窗口由三个按钮组成:

上一首,播放,下一首。这里就先展示一个最简约的音乐播放器(播放模式为随机播放)。

源代码:

# -*- coding: utf-8 -*-"""Created on Sat Feb  9 17:02:52 2019@author: zwn"""import osimport pygameimport tkinterimport randomroot = 'D:/Project/player/'os.chdir(root)###############################################################################file_list = [] for root, dirs, files in os.walk(root):    for file in files:        if os.path.splitext(file)[1] == ".mp3":            file_list.append(os.path.join(root, file))keys = []values = []for i, ele in enumerate(file_list):    keys.append(i)    values.append(ele)dic = dict(zip(keys, values)) ###############################################################################app = tkinter.Tk()app.title('音乐播放器')pygame.mixer.init()def play():    num = random.randint(0, len(file_list)-1)    app.title(dic[i][dic[i].rfind('\\')+1:-4])    pygame.mixer.music.load(file_list[num])    pygame.mixer.music.play()    def prev():    num = random.randint(0, len(file_list)-1)    app.title(dic[num][dic[i].rfind('\\')+1:-4])    pygame.mixer.music.load(file_list[num])    pygame.mixer.music.play()def next():    num = random.randint(0, len(file_list)-1)    app.title(dic[num][dic[i].rfind('\\')+1:-4])    pygame.mixer.music.load(file_list[num])    pygame.mixer.music.play()Prev = tkinter.Button(app, width = 20, height = 3, text = "上一首", font =("楷体",20, "bold"),                      bg='#00b8e5',activebackground='#cf86fb', relief='sunken', command = prev)                                       Next = tkinter.Button(app, width = 20, height = 3, text = "下一首", font =("楷体",20, "bold"),                      bg='#00b8e5', activebackground='#cf86fb',relief='sunken', command = next)Play = tkinter.Button(app, width = 20, height = 3, text = "播放", font =("楷体",20, "bold"),                      bg='#00b8e5', activebackground='#cf86fb',relief='sunken', command = play)Prev.pack(side='left')Next.pack(side='right')Play.pack(side='top')app.mainloop()

最后来一首黄梅戏-女驸马送给大家,祝大家愉快地过完年,年后工作顺利,心想事成。