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中偏函数partial用法实例分析
Jul 08 Python
python遍历目录的方法小结
Apr 28 Python
Django原生sql也能使用Paginator分页的示例代码
Nov 15 Python
使用python Telnet远程登录执行程序的方法
Jan 26 Python
Python3实现的判断回文链表算法示例
Mar 08 Python
Linux上使用Python统计每天的键盘输入次数
Apr 17 Python
解决Python内层for循环如何break出外层的循环的问题
Jun 24 Python
python计算n的阶乘的方法代码
Oct 25 Python
关于windows下Tensorflow和pytorch安装教程
Feb 04 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
Mar 13 Python
python3.6使用SMTP协议发送邮件
May 20 Python
Python基础数据类型tuple元组的概念与用法
Aug 02 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 反射机制实现动态代理的代码
2008/10/22 PHP
php通过exif_read_data函数获取图片的exif信息
2015/05/21 PHP
Symfony2安装第三方Bundles实例详解
2016/02/04 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
PHP中十六进制颜色与RGB颜色值互转的方法
2019/03/18 PHP
PHP反射原理与用法深入分析
2019/09/28 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
PHP 实现缩略图
2021/03/09 PHP
Javascript学习笔记2 函数
2010/01/11 Javascript
Javascript实现真实字符串剩余字数提示的实例代码
2013/10/22 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
Javascript基础教程之关键字和保留字汇总
2015/01/18 Javascript
jQuery实现移动 和 渐变特效的点击事件
2015/02/26 Javascript
JS实现类似51job上的地区选择效果示例
2016/11/17 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
jQuery实现数字自动增加或者减少的动画效果示例
2018/12/11 jQuery
使用gulp构建前端自动化的方法示例
2018/12/25 Javascript
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
2019/06/04 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
python实现井字棋游戏
2020/03/30 Python
小小聊天室Python代码实现
2016/08/17 Python
python3.5实现socket通讯示例(TCP)
2017/02/07 Python
简述:我为什么选择Python而不是Matlab和R语言
2017/11/14 Python
python抓取文件夹的所有文件
2018/02/27 Python
Sanic框架配置操作分析
2018/07/17 Python
python判断字符串或者集合是否为空的实例
2019/01/23 Python
Python 一行代码能实现丧心病狂的功能
2020/01/18 Python
python 实现两个npy档案合并
2020/07/01 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
2020/12/07 Python
主管职责范文
2013/11/09 职场文书
汽车销售员如何做职业生涯规划
2014/02/16 职场文书
技校学生个人职业生涯规划范文
2014/03/03 职场文书
写给老婆的保证书
2015/02/27 职场文书
解析在浏览器地址栏输入一个URL后发生了什么
2021/06/21 Servers
Node与Python 双向通信的实现代码
2021/07/16 Javascript
Java 死锁解决方案
2022/05/11 Java/Android