首页 > 编程语言 >Python极其简易音乐播放器

Python极其简易音乐播放器

时间:2022-12-29 15:36:48浏览次数:52  
标签:播放器 Python 简易 pygame import btn root def pack

#导入相应模块
from tkinter import *
from tkinter import filedialog
from tkinter import messagebox
from pygame.locals import *
import time
import pygame
import sys


#初始化
pygame.init()

#设置用于播放歌曲的列表
fileslist = []  

def play():
    """ 播放歌曲 """
    pygame.mixer.music.unpause()

def pause():
    """ 暂停播放 """
    pygame.mixer.music.pause()

def stop():
    """ 停止播放 """
    pygame.mixer.music.stop()

def opensong():
    """ 打开歌曲路径 """
    filessonglist = filedialog.askopenfilenames() #打开多个文件
    if not filessonglist: #判断是否添加曲库
        messagebox.showwarning("音乐","当前未选择歌曲")
        return
    for item in filessonglist: #添加到播放列表当中
        fileslist.append(item)
        listname = item.split('/')
        listsong.insert(END,listname[len(listname)-1])
        
def quit():
    """ 关闭窗口 """
    root.quit()

def playcurrentsong(*args):
    """ 播放当前列表歌曲 """
    indexs = listsong.curselection()
    selectindex = int(indexs[0])
    pygame.mixer.music.load(fileslist[selectindex])
    pygame.mixer.music.play()

def frontsong():
    """ 上一首 """

def nextsong():
    """ 下一首 """

root = Tk() #创建窗口
root.Color = "red"
root.title("YTouchMusic") #标题
root.geometry('250x440') #设置窗口大小和位置
listsong = Listbox(root) #添加歌曲列表
listsong.pack(padx=5, pady=10, side=LEFT) #将列表放在左侧
listsong.bind("<<ListboxSelect>>",playcurrentsong)#点击列表,播放对应歌曲
'''menu = Menu()
me = Menu()#一级菜单
root.config(menu=me)#加入一级菜单
'''
root.attributes('-toolwindow', False, 
                '-alpha', 0.9, #设置透明度
                '-topmost', True)
pygame.init()
pygame.mixer.init()
l = Label(root, text="YTouch - why")
l.pack()

'''相关button '''
btn_ChooseMusic = Button(root,text = "选择文件",command = opensong)
btn_ChooseMusic.pack(padx=1, pady=12, side=RIGHT)
btn_Pause =Button(root,text = "暂停播放",command = pause)
btn_Pause.pack()
btn_Continue=Button(root,text = "继续",command = play)
btn_Continue.pack()
btn_Stop =Button(root,text = "停止",command = stop)
btn_Stop.pack()
btn_Quit =Button(root,text = "关闭",command = quit)
btn_Quit.pack()

root.mainloop() #必需组件

本人小白  刚学两天的python 所以做的很水  以后慢慢完善

效果如下:

Python极其简易音乐播放器_窗口大小

 

标签:播放器,Python,简易,pygame,import,btn,root,def,pack
From: https://blog.51cto.com/u_15906863/5977822

相关文章

  • python 绘制简易折线图
    #简易折线图绘制#encoding=utf-8#引入对应库文件importnumpyasnpimportmatplotlib.pyplotaspltx=np.linspace(0,20,100)#类似于平滑度0表示x坐标原......
  • 解析tid数据并绘制折线图(python)
    #解析tid数据并绘制折线图#encoding=utf-8#引入对应库文件importnumpyasnpimportmatplotlib.pyplotasplt#读取txt文件f=open('C:/Users/Administrator/D......
  • Python if语句Demo
    num=int(input("请输入你的数字:"))if(num<3):print(num+2)elif(num>4andnum<6):print("好吧")else:print("还好")结果: 主要就是逻辑运......
  • Python lambda函数demo
    #匿名函数lambda'''lambda函数使用方法:lambdapamr1,pamr2:functionpamr1/parm2代表是参数function指的是实现逻辑'''#声明函数sum=lambdaarg1,arg2:arg......
  • 7个你可能从未使用过的Python隐藏技巧
    Python是每个程序员都喜欢的语言,因为它易于编码和易于阅读的语法。但是,你知道python有一些很酷的技巧可以用来让事情变得更简单吗?在今天的内容中,我将与你分享7个你可......
  • 【Python语法糖】闭包和装饰器
    Python闭包和装饰器参考:https://zhuanlan.zhihu.com/p/453787908https://www.bilibili.com/video/BV1JW411i7HR/?spm_id_from=333.337.search-card.all.click&vd_source......
  • 初学《python编程从入门到实践》web应用程序,出现错误
    一开始是遇到了TemplateDoesNotExist的错误,上百度都是说改settings.py里面的TEMPLATE的DIRS,但我改了还是出现问题,我用的《python编程从入门到实践》这本书的出版时间是20......
  • Python 自定义label clicked
    classMyQLabel(QtWidgets.QLabel):#自定义信号,注意信号必须为类属性clicked=QtCore.pyqtSignal()def__init__(self,parent=None):super......
  • 【爬虫+数据分析+数据可视化】python数据分析全流程《2021胡润百富榜》榜单数据!
    目录一、爬虫1.1爬取目标1.2分析页面1.3爬虫代码1.4结果数据二、数据分析2.1导入库2.2数据概况2.3可视化分析2.3.1财富分布2.3.2年龄分布2.3.3公司总部分布2.3.4......
  • Python第十二章
    实例1:使用wx.StaticText输出Python之禅使用StaticText类输出中文版的Python之禅。具体代码如下:#_*-coding:utf-8_*_importwxclassMyFrame(wx.Frame):def__in......