qfxx第二周6作业

本文介绍了一个使用Python自制的简易音乐播放器项目。该播放器能够实现音乐播放、暂停、下一首、上一首及音量调节等功能。通过pygame库加载和播放音乐文件,并通过命令行界面供用户选择操作。
#!/usr/bin/python3
#-*- coding: utf-8 -*-
#-*- author:zhangjiao -*-
'''
1.给歌词解析器添加音乐
2.写一个音乐播放器

'''
import pygame
import os
import time
musicDir=r'D:\CloudMusic'
musicList=[]
nowMusic=''
value=0.5
def getMusic():
    if not os.path.exists(musicDir):
        print("指定播放目录不存在")
    else:
        musicName=os.listdir(musicDir)
        for a in musicName:
            musicAddress=os.path.join(musicDir,a)
            musicList.append(musicAddress)
        # print(musicList)
def playMusic(music):
    mm = pygame.mixer.music.load(music)
    pygame.mixer.music.set_volume(value)
    pygame.mixer.music.play()
    pygame.mixer.music.set_endevent(pygame.USEREVENT + 1)

def stopMusic():
    pygame.mixer.music.stop()

# def backplay():


def nextMusic():
    global nowMusic
    if musicList.index(nowMusic)==len(musicList)-1:
        nowMusic=musicList[0]
        playMusic(nowMusic)
    else:
        nowMusic=musicList[musicList.index(nowMusic)+1]
        playMusic(nowMusic)

def lastMusic():
    global nowMusic
    if musicList.index(nowMusic)==0:
        nowMusic=musicList[-1]
        playMusic(nowMusic)
    else:
        nowMusic=musicList[musicList.index(nowMusic)-1]
        playMusic(nowMusic)

def increase():
    global value
    try:
        value+=0.1
        pygame.mixer.music.set_volume(value)
    except:
        print("已到达最大音量")

def reduce():
    global value
    try:
        value-=0.1
        pygame.mixer.music.set_volume(value)
    except:
        print("已到达最小音量")

def welcome():
    print('''
    *************************
    * 欢迎来到酷我音乐播放器 *
    *************************
    ''')
    pygame.mixer.init()

def select():
    print('''
    **************************
    * 1.播放       2.停止     *
    * 3.下一曲     4.上一曲   *
    * 5.增大音量   6.减少音量 *
    *      0.退出             *
    ***************************
    ''')
    return input("请选择您要操作的选项:")

def center():
    global nowMusic
    nowMusic=musicList[0]
    welcome()
    while 1:
        a=select()
        if a=='0':
            return 0
        elif a=='1':
            playMusic(nowMusic)
            continue
        elif a=='2':
            stopMusic()
            continue
        elif a=='3':
            nextMusic()
            continue
        elif a=='4':
            lastMusic()
            continue
        elif a=='5':
            increase()
            continue
        elif a=="6":
            reduce()
            continue

if __name__=="__main__":
    getMusic()
    center()



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值