伯荣 发表于 2023-7-7 16:08:34

使用Python打造属于你的ikun音乐播放器,简直不要太好用

首先声明,我不是小黑子,我不是小黑子!
https://img-blog.csdnimg.cn/5aa223c25318466886e6d8647f351112.png
作为一个ikun,时刻都在想着我们家姐姐!
这不上次用Python做了一个ikun飞机大战,今天再给大家整活一手,Python tkinter开发一个专属ikun音乐播放器,这样就能时刻看到姐姐了。
咱们来看看效果

 

 
https://img-blog.csdnimg.cn/fe527a24e3364232a46d7fc4155d2cdf.png
https://img-blog.csdnimg.cn/41ed57e5369c44e6999e5d71dc9ec280.png
代码实现
今天要做的就是上面的简易音乐播放器
先导入需要用到的模块
import tkinter as tk
from pygame import mixer
import os 
os模块是自带的,另外的两个都需要安装
做一个大小合适的窗口
root = tk.Tk()
root.title('音乐播放器')
root.geometry('440x570+200+200')

root.mainloop() 
这样就可以得到一个大小合适的窗口,然后再上个底色和图标
root.iconbitmap('music.ico')
root['background'] = '#6175d6'

img = tk.PhotoImage(file='img\\封面.png')
tk.Label(root, image=img, bg='#6175d6').pack() 
功能按键
frame_1 = tk.Frame(bg='#6175d6')
frame_1.pack(pady=10)
# 完整代码都放在这个抠裙了:708525271
tk.Button(frame_1, text='上一首', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat').pack(
    side=tk.LEFT)
tk.Button(frame_1, text='播放', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat').pack(
    side=tk.LEFT, padx=40)
tk.Button(frame_1, text='下一首', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat', command=next).pack(
    side=tk.LEFT)

frame_2 = tk.Frame(bg='#6175d6')
frame_2.pack(pady=10)
tk.Button(frame_2, text='音量↑', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat'
          ).pack(side=tk.LEFT)
tk.Button(frame_2, text='暂停', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat').pack(
    side=tk.LEFT, padx=20)
tk.Button(frame_2, text='继续', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat').pack(
    side=tk.LEFT, padx=20)
tk.Button(frame_2, text='音量↓', font=('黑体', 15), fg='#f6f5f3', bg='#6175d6', relief='flat'
          ).pack(side=tk.LEFT) 
https://img-blog.csdnimg.cn/5d0c890ceedb4fd78f8f02af81f948a2.png
读取音乐
完善方向是加上排序功能,music是音乐文件夹 os.listdir 打开指定文件夹获取文件夹下所有文件名称
def music_list():
    lists = []
    for i in os.listdir('music'):
      if os.path.splitext(i)[-1] == '.mp3':
            lists.append(i)
      else:
            pass
    return lists


def name_now():# 当前播放音乐名称
    name1 = music_list()
    song_name = name1.split(' - ')[-1][:-4]
    singer = name1.split(' - ')
    return name1, song_name, singer


def play():
    mixer.init()
    size = 0.5
    name, song_name, singer = name_now()
    mixer.music.set_volume(size)
    mixer.music.load(f'music/{name}')
    mixer.music.play() 
按键功能
音乐暂停/取消暂停
def stop():
    mixer.music.pause()

def cancel():
    mixer.music.unpause() 
切换音乐上一首
def last():      global num    mixer.init()    mixer.music.stop()    if 0
页: [1]
查看完整版本: 使用Python打造属于你的ikun音乐播放器,简直不要太好用