Python简单的音乐播放器1

import pygame
import time

musicList = [r"E:\KuGou\gequ\周杰伦 - 牛仔很忙.mp3",
             r"E:\KuGou\gequ\张宇 - 趁早.mp3",
             r"E:\KuGou\gequ\林俊杰 - 学不会.mp3",
             r"E:\KuGou\gequ\刘德华 - 独自去偷欢 - 2007中国巡回演唱会.mp3"]

class musicPlay():

    def playmusic(self, music):
        pygame.mixer.init() #音频初始化
        pygame.mixer.music.load(musicList[music]) # 加载音乐文件
        pygame.mixer.music.play() # 播放音乐

    def pausemusic(self, num):
        if num % 2 == 1:
            pygame.mixer.music.pause() # 暂停
        else:
            pygame.mixer.music.unpause() # 取消暂停

    def playexit(self):
        pygame.mixer.music.stop() # 停止播放

    @staticmethod
    def display():
        print("""
                   欢迎
            ******************
            *    音乐播放器   *
            ******************
        """)

    @staticmethod
    def choose():
        print("""
        ****************************
        * 1.播放           2.暂停   *
        * 3.上一曲         4.下一曲 *
        *          5.退出           *
        ****************************
        """)

musicplay = musicPlay()
pauseNum = 0
music = 0 # 音乐默认从第一首开始
musicplay.display()
time.sleep(3)

while True:
    musicplay.choose()
    operation = input("请输入您的操作:")
    if operation == '1':
        musicplay.playmusic(music)
    elif operation == '2':
        pauseNum += 1
        musicplay.pausemusic(pauseNum)
    elif operation == '3':
        pauseNum = 0 # 上下曲重新给pauseNum赋值,防止出现第一次暂停后换曲再暂停时暂停不了
        if music == 0:
            music = len(musicList) - 1 # 第一首时,再切上一曲则重新给music
        else:
            music -= 1
        musicplay.playmusic(music)
    elif operation == '4':
        pauseNum = 0
        if music == len(musicList) - 1:
            music = 0
        else:
            music += 1
        musicplay.playmusic(music)
    else:
        musicplay.playexit()
        break

功能介绍:可以切换上下曲,暂停播放,但是不能自动播放下一曲

music文件加载还可以用下面这种方式:

import os
path = r"E:\KuGou\gequ"
# 获取路径下的文件
filePath = os.listdir(path)
musicList = [] # 存储音乐文件路径
for musicPath in filePath:
    # 对每个文件进行路径拼接
    musicList.append(path + "\\" + musicPath)

pygame加载方法在Python歌词解析器(加音频播放)有介绍

猜你喜欢

转载自blog.csdn.net/YiHong_Li/article/details/81354949