Python趣味挑战之实现简易版音乐播放器


Posted in Python onMay 28, 2021

一、前言

今天我们将用Python来创建一个属于自己的音乐播放器。为此,我们将使用三个软件包:

  • Tkinter:用于UI
  • Pygame:播放音乐
  • os:用于访问系统文件

在这里我们将看到创建音乐播放器的每个步骤,我们将代码分为四个部分。

二、实现过程

在第一部分中,我们将导入所有软件包。其次,我们将创建UI。第三,我们从系统中导入所有音乐并在APP应用程序中进行展示。第四,设计一个有助于播放特定音乐的功能。

在导入所有这三个软件包之前,我们必须在系统中安装这些软件包。

pip install pygame
pip install tkinter

os已经安装好了,所以我们只需要导入它即可:

from tkinter import *
from pygame import mixer
import os

现在我们将为应用程序创建UI。

root = Tk()
root.title(“music player”)
Button(root,text= “play”, command = playsong).grid(row =1 , column = 0)
Button(root,text= “pause”, command = pausesong).grid(row =1 , column = 1)
Button(root,text= “stop”, command = stopsong).grid(row =1 , column = 2)
Button(root,text= “resume”, command = resumesong).grid(row =1 , column = 3)
mainloop()

在这里我们创建了4个按钮并传递命令,在下一步中,我们将为每个函数创建一个函数,以帮助播放、停止、恢复和暂停播放特定歌曲。我们还将会把所有歌曲存储在我们的播放列表中,因此在步骤三中,我们将创建一个变量名称作为播放列表,并从我们的系统中存储和显示歌曲列表。

mixer.init()
playlist = Listbox(root,selectmode=SINGLE,bg = “green”)
playlist.grid(columnspan =5)
os.chdir(‘/Users/rajatupadhyaya/Documents/song')
song = os.listdir()
for s in song:
playlist.insert(END,s)

mixer.init()将检查系统中所有当前的歌曲。在下一行中,我们创建了一个列表框,该列表框将显示在我们的UI中。os在下一行没有帮助访问特定目录,因此我们给出了路径并将所有音乐存储在歌曲变量中,并运行了一个将所有歌曲循环存储在播放列表中。现在,我们将在最后一步定义功能并创建播放列表。

def playsong():
currentsong = playlist.get(ACTIVE)
print(currentsong)
mixer.music.load(currentsong)
mixer.music.play()
def pausesong():
mixer.music.pause()
def stopsong():
mixer.music.stop()
def resumesong():
mixer.music.unpause()

playsong函数将检查当前选择的歌曲并加载歌曲后播放。

三、完整代码

Python趣味挑战之实现简易版音乐播放器

四、最终的音乐播放器APP如下

Python趣味挑战之实现简易版音乐播放器

到此这篇关于Python趣味挑战之实现简易版音乐播放器的文章就介绍到这了,更多相关Python音乐播放器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python类的多重继承问题深入分析
Nov 09 Python
python+opencv实现的简单人脸识别代码示例
Nov 14 Python
在NumPy中创建空数组/矩阵的方法
Jun 15 Python
Python 对输入的数字进行排序的方法
Jun 23 Python
对python requests发送json格式数据的实例详解
Dec 19 Python
如何利用Anaconda配置简单的Python环境
Jun 24 Python
利用Python校准本地时间的方法教程
Oct 31 Python
Django通过dwebsocket实现websocket的例子
Nov 15 Python
Python paramiko 模块浅谈与SSH主要功能模拟解析
Feb 29 Python
python多进程 主进程和子进程间共享和不共享全局变量实例
Apr 25 Python
PyQt5 控件字体样式等设置的实现
May 13 Python
python中time.ctime()实例用法
Feb 03 Python
新手必备Python开发环境搭建教程
Keras多线程机制与flask多线程冲突的解决方案
May 28 #Python
pytorch 6 batch_train 批训练操作
May 28 #Python
pytorch 如何使用batch训练lstm网络
May 28 #Python
使用Pytorch训练two-head网络的操作
May 28 #Python
使用Python的开发框架Brownie部署以太坊智能合约
使用Pytorch实现two-head(多输出)模型的操作
You might like
php生成图形(Libchart)实例
2013/11/06 PHP
一个PHP二维数组排序的函数分享
2014/01/17 PHP
php Imagick获取图片RGB颜色值
2014/07/28 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
2017/08/25 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
基于Jquery的标签智能验证实现代码
2010/12/27 Javascript
A标签中通过href和onclick传递的this对象实现思路
2013/04/19 Javascript
Jquery的each里用return true或false代替break或continue
2014/05/21 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
2015/03/10 Javascript
jquery实现倒计时功能
2015/12/28 Javascript
3种不同的ContextMenu右键菜单实现代码
2016/11/03 Javascript
JSON中key动态设置及JSON.parse和JSON.stringify()的区别
2016/12/29 Javascript
Angular中的$watch方法详解
2017/09/18 Javascript
ionic选择多张图片上传的示例代码
2017/10/10 Javascript
js中时间格式化的几种方法
2018/07/22 Javascript
解决Vue使用swiper动态加载数据,动态轮播数据显示白屏的问题
2018/09/27 Javascript
javascript设计模式 ? 观察者模式原理与用法实例分析
2020/04/22 Javascript
python sqlobject(mysql)中文乱码解决方法
2008/11/14 Python
python使用urlparse分析网址中域名的方法
2015/04/15 Python
Python程序中的观察者模式结构编写示例
2016/05/27 Python
Linux CentOS7下安装python3 的方法
2018/01/21 Python
python交互界面的退出方法
2019/02/16 Python
Python利用字典破解WIFI密码的方法
2019/02/27 Python
12个Python程序员面试必备问题与答案(小结)
2019/06/24 Python
基于python cut和qcut的用法及区别详解
2019/11/22 Python
Python如何将装饰器定义为类
2020/07/30 Python
详解python方法之绑定方法与非绑定方法
2020/08/17 Python
Liu Jo西班牙官网:意大利服装品牌
2019/09/11 全球购物
社会实践先进工作者事迹材料
2014/05/06 职场文书
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
解除劳动关系协议书2篇
2014/11/28 职场文书
2014大学生学生会工作总结
2014/12/19 职场文书
学习保证书100字
2015/02/26 职场文书
2015毕业生实习期工作总结
2015/04/09 职场文书
工作简报格式范文
2015/07/21 职场文书
《妈妈别哭,有我在》读后感3篇
2020/01/13 职场文书