不能去演唱会现场就多听听耳机里的他们,教你用python来实现一个音乐播放器

本文介绍如何利用Python基础知识及requests、time、pygame、tkinter等库,创建一个具备音乐播放、暂停、下一首、上一首、音量控制等功能的音乐播放器。虽然无法亲临演唱会现场,但可以通过自制播放器享受音乐。
摘要由CSDN通过智能技术生成

前言

最近可以说大麦网很知名了,哈哈还有好多想要用Python来搞抢票脚本的

怎么说呢也不是不行,但是咱今天可不是来搞这个的,我可不抢票,抢了都去不了,上班搞钱啊铁铁们

咱就是说去不了现场,就多听听手机的歌吧,有缘分怎样都可以见到的哈哈哈

今天来给你们表演一个,用Python来做个音乐播放器

在这里插入图片描述

今天这个可不是最简单的,最简单的音乐播放器只需要九行代码!

完整代码👉文末名片获取

import time
import pygame

file = r'歌曲路径'
pygame.mixer.init()
print('正在播放',file)
track = pygame.mixer.music.load(file)
pygame.mixer.music.play()
time.sleep(130)
pygame.mixer.music.stop()

在这里插入图片描述

知识点和所需模块

python基础知识

  1. requests库
  2. time
  3. pygame
  4. tkinter
  5. 线程

环境

  • windows
  • pycharm 2021.2
  • python 3.8

导入模块

import os
import time
import tkinter
import tkinter.filedialog
import threading
import pygame   
root = tkinter.Tk()
root.title('音乐播放器')
root.geometry('460x600+500+100')
root.resizable(False,False)  # 不能拉伸

folder =''
res = []
690643772 ### 源码领取
num = 0
now_music = ''

添加文件夹

def buttonChooseClick():
    """
    添加文件夹
    :return:
    """
    global folder
    global res
    if not folder:
        folder = tkinter.filedialog.askdirectory()
        musics = [folder + '\\' + music
                  for music in os.listdir(folder) \

                  if music.endswith(('.mp3','.wav','.ogg'))]
        ret = []
        for i in musics:
            ret.append(i.split('\\')[1:])
            res.append(i.replace('\\','/'))

        var2 = tkinter.StringVar()
        var2.set(ret)
        lb = tkinter.Listbox(root,listvariable=var2)
        lb.place(x=50,y=100,width=260,height=300)

    if not folder:
        return

    global playing
    playing = True
    # 根据情况禁用和启用相应的按钮
    buttonPlay['state'] = 'normal'
    buttonStop['state'] = 'normal'
    # buttonPause['state'] = 'normal'
    pause_resume.set('播放')

播放音乐

def play():
    """
    播放音乐
    :return:
    """
    if len(res):
        pygame.mixer.init()
        global num
        while playing:
            if not pygame.mixer.music.get_busy():
                netxMusic = res[num]
                print(netxMusic)
                print(num)
                pygame.mixer.music.load(netxMusic.encode())
                # 播放
                pygame.mixer.music.play(1)
                if len(res) -1 == num:
                    num = 0
                else:
                    num = num + 1
                netxMusic = netxMusic.split('\\')[1:]
                musicName.set('playing......' + ''.join(netxMusic))
            else:
                time.sleep(0.1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值