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实现动态添加类的属性或成员函数的解决方法
Jul 16 Python
手动实现把python项目发布为exe可执行程序过程分享
Oct 23 Python
Python如何抓取天猫商品详细信息及交易记录
Feb 23 Python
详解Python安装scrapy的正确姿势
Jun 26 Python
Python3 利用requests 库进行post携带账号密码请求数据的方法
Oct 26 Python
Python 带有参数的装饰器实例代码详解
Dec 06 Python
python实现字符串完美拆分split()的方法
Jul 16 Python
python3 BeautifulSoup模块使用字典的方法抓取a标签内的数据示例
Nov 28 Python
Python requests设置代理的方法步骤
Feb 23 Python
django ORM之values和annotate使用详解
May 19 Python
Python应用自动化部署工具Fabric原理及使用解析
Nov 30 Python
python基础之文件处理知识总结
May 23 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
中国第一家无线电行
2021/03/01 无线电
PHP游戏编程25个脚本代码
2011/02/08 PHP
PHP解决URL中文GBK乱码问题的两种方法
2014/06/03 PHP
php生成curl命令行的方法
2015/12/14 PHP
Firefox下无法正常显示年份的解决方法
2014/09/04 Javascript
详解JavaScript中的客户端消息框架设计原理
2015/06/24 Javascript
jquery限定文本框只能输入数字(整数和小数)
2016/01/08 Javascript
JavaScript事件处理的方式(三种)
2016/04/26 Javascript
微信小程序 触控事件详细介绍
2016/10/17 Javascript
PHP实现本地图片上传和验证功能
2017/02/27 Javascript
checkbox:click事件触发span元素内容改变的方法
2017/09/11 Javascript
Nodejs模块载入运行原理
2018/02/23 NodeJs
vue-cli常用设置总结
2018/02/24 Javascript
vue 使用eventBus实现同级组件的通讯
2018/03/02 Javascript
使用JavaScript中的lodash编写双色球效果
2018/06/24 Javascript
解决betterScroll在vue中存在图片时,出现拉不动的问题
2018/09/27 Javascript
js prototype和__proto__的关系是什么
2019/08/23 Javascript
Webpack按需加载打包chunk命名的方法
2019/09/22 Javascript
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
Python复制Word内容并使用格式设字体与大小实例代码
2018/01/22 Python
pandas series序列转化为星期几的实例
2018/04/11 Python
numpy中的高维数组转置实例
2018/04/17 Python
基于Python实现定时自动给微信好友发送天气预报
2018/10/25 Python
python hook监听事件详解
2018/10/25 Python
jupyter notebook 重装教程
2020/04/16 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
行政助理工作职责范本
2014/03/04 职场文书
房产委托公证书
2014/04/08 职场文书
大学优秀班主任事迹材料
2014/05/02 职场文书
项目建议书怎么写
2014/05/15 职场文书
支行行长竞聘报告
2014/11/06 职场文书
勤俭节约主题班会
2015/08/13 职场文书
《攀登者》:“海拔8000米以上,你不能指望任何人”
2019/11/25 职场文书