资源简介
python音乐播放器,绝对原创,可以显示歌词,但不能动态滚动
代码片段和文件信息
from tkinter import scrolledtext
from tkinter import filedialog
from tkinter import *
import os
import os.path
import pygame
import tkinter.messagebox
wd=Tk()
wd.title(“我的音乐播放器“)
wd.geometry(“600x600“)
###################模块开始###################################
#声明变量部分#声明变量部分#声明变量部分#声明变量部分#声明变量部分
#歌曲名字 变量
varlabelmusicname=StringVar()
varlabelmusicname.set(“歌曲名字“)
#音量大小数字 变量
varlabelVoice=StringVar()
varlabelVoice.set(“音量大小 0.0“)
#声明变量部分#声明变量部分#声明变量部分#声明变量部分#声明变量部分
###################模块结束###################################
#其他函数#其他函数#其他函数#其他函数#其他函数#其他函数#其他函数
#找到MP3 返回一个列表
def find(pathx=[]s=‘.mp3‘):
if not os.path.isdir(path):
return
for i in os.listdir(path):
file=os.path.join(pathi)
if os.path.isdir(file):
find(files)
elif str(os.path.splitext(file)[1])==s:
x.append(file)
return x
#选择一个文件夹返回这个文件夹的路径
def ChoiceMusicMulu():
global musicpath
#获取某个文件夹下的音乐文件返回一个列表
musicpath = filedialog.askdirectory()
#musicpath=filedialog.askopenfilenames()#选中多个文件
global musiclist
musiclist=find(musicpath)
for i in range(len(musiclist)):
geming=os.path.split(musiclist[i])#拆分出文件名
listboxgedan.insert(0str(geming[1]))#在listbox里面追加
#返回列表框选中的下标s (从0开始)
def xiabiao(suijing):
indexs = listboxgedan.curselection()
#indexs返回当前选中项的索引 返回一个只有一个元素元组(x)
index=int(indexs[0])#取出x
xiabiao=index#获取下标
#get返回制定索引的项值
varlabelmusicname.set(str(listboxgedan.get(xiabiao)))
return xiabiao
#上一首
def upPlay():
try:
newxiabiao=xiabiao(1)-1
pygame.mixer.init()
geming=os.path.split(musiclist[len(musiclist)-newxiabiao-1])
pygame.mixer.music.load(musicpath+‘/‘+str(geming[1]))
pygame.mixer.music.play(1)
listboxgedan.select_clear(xiabiao(1))
listboxgedan.select_set(newxiabiao)
varlabelmusicname.set(str(listboxgedan.get(newxiabiao)))
#显示歌词
with open((str(musicpath+‘/‘+str(geming[1]))[:-3])+‘txt‘‘r‘)as f:
gc=f.read()
scr.delete(1.0 END)#先清空旧歌词
scr.insert(ENDgc)#再加入新歌词
except baseException as e:
tkinter.messagebox.askquestion(title=“错误“message=“请重新点击歌曲“)
#只要有异常就弹出
#下一首
def downPlay():
try:
newxiabiao=xiabiao(1)+1
pygame.mixer.init()
geming=os.path.split(musiclist[len(musiclist)-newxiabiao-1])
pygame.mixer.music.load(musicpath+‘/‘+str(geming[1]))
pygame.mixer.music.play(1)
listboxgedan.select_clear(xiabiao(1))
listboxgedan.select_set(newxiabiao)
varlabelmusicname.set(str(listboxgedan.get(newxiabiao)))
#显示歌词
with open((str(musicpath+‘/‘+str(geming[1]))[:-3])+‘txt‘‘r‘)as f:
gc=f.read()
scr.delete(1.0 END)#先清空旧歌词
scr.insert(ENDgc)#再加入新歌词
except base
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8079 2018-11-22 07:45 不能动态显示歌词版\newMusic20181121.py
文件 130 2018-11-25 16:27 不能动态显示歌词版\周港辉的音乐播放器使用说明.txt
文件 2426631 2017-11-14 08:32 不能动态显示歌词版\测试音乐\张瑶 - 遇见.mp3
文件 374 2018-11-11 22:32 不能动态显示歌词版\测试音乐\张瑶 - 遇见.txt
文件 10517970 2018-07-19 13:13 不能动态显示歌词版\测试音乐\林宥嘉 - 全世界谁倾听你.mp3
文件 889 2018-11-11 22:32 不能动态显示歌词版\测试音乐\林宥嘉 - 全世界谁倾听你.txt
文件 2217844 2018-03-16 19:38 不能动态显示歌词版\测试音乐\魏晨-疯人愿.mp3
文件 1111 2018-11-11 22:31 不能动态显示歌词版\测试音乐\魏晨-疯人愿.txt
目录 0 2019-01-06 15:52 不能动态显示歌词版\测试音乐
目录 0 2019-01-06 15:52 不能动态显示歌词版
----------- --------- ---------- ----- ----
15173028 10
相关资源
- OpenCV_ Computer Vision Projects with Python.P
- Python深度学习+2018中文版pdf+英文版p
- 机器学习实战Python 开发 高清 非扫描
- Python深度学习中文版
- python大数据
- Python项目开发实战 第2版(完整版)
- onvif-python调用
- Python编程快速上手 让繁琐工作自动化
- SELENIUM 2 自动化测试实战 基于PYTHON语
- Python与数据挖掘中文高清完整版PDF
- Python编程123
- python3.6 64位安装包
- vc_redist.2015.exe
- Python编程从入门到实践课件
- Francois Chollet-Deep Learning with Python
- Python程序设计-董付国第二版书中源代
- 2019新版_Python编程从入门到实践高清中
- wxpython in action中英文合集(两份)
- python 3.7
- python400集代码
- python命名实体识别demo
- python 3.8.0 64位.rar
- 小甲鱼资源积分太贵了[全套55讲]-鱼
- Deep learning with python中文版
- 《neural networks and deep learning》《神经
- Reinforcement Learning - With Open AI TensorFl
- python编程初学者指南相关软件和源代
- Python写的一个比赛抽签软件
- python 手势识别
- python网络数据采集 中文版
评论
共有 条评论