自己写的一个连数据库的音乐调用模块 MusicRj

#自己定义
class MusicRj:

    # 创音乐表t_music
    # sql = '''CREATE TABLE t_music1(
    #         id INT PRIMARY KEY AUTO_INCREMENT, -- 标识 主键  自增
    #         mname VARCHAR(32), -- 歌名
    #         path VARCHAR(320)  -- 音乐所在位置
    # );


    def __init__(self):

        pass

    def insert():
        """
        添加歌曲
        :return:
        """
        import pymysql  # 导入
        conn = pymysql.connect(host="localhost", user="root", password="123", db="day300", charset="utf8")  # 修路
        car = conn.cursor()  # 备车
        name = input("请输入歌名:")
        path = input("请输入路径:")   #在pycharm赋值变量的\不会转意,在mysql里传过去的变量里的\也不会转意
        # 添加三首歌的id,名字,地址
        # (1,"洛天依 - 洛天依投食歌","F:\\\\pycharm2019.1.3\\\\PyCharm word\\\\炼狱\\\\资料\\\\洛天依 - 洛天依投食歌.mp3"),
        car.execute("insert into t_music1(mname,path) values (%s,%s)",(name,path))
        conn.commit()
        car.close()
        conn.close()



    def listen():
        """
        查看数据库里的歌
        听歌
        :return:
        """
        import pymysql  # 导入
        conn = pymysql.connect(host="localhost", user="root", password="123", db="day300", charset="utf8")  # 修路
        car = conn.cursor()  # 备车
        car.execute("select * from t_music1")  #发车
        data =  car.fetchall()  #回货拿出
        car.close()     #消车
        conn.close()    #消路

        lst = []
        for i in data:
            a,b,c = i[0],i[1],i[2]
            lst.append(c)
            print(a,b,c)

        try:
            while True:
                num = int(input("请您输入您要听的歌的序号(0为关闭):"))

                #使用pygame模块播放
                if num != 0:
                    print("音乐马上就来")
                    import pygame,time      #使用pyname的mixer播放音效
                    pygame.mixer.init()     #初始化
                    # print(lst[num-1])       #打印要听的歌的路径
                    pygame.mixer.music.load(lst[num-1])    #通过路径path加载
                    pygame.mixer.music.play()       #一旦音乐开始了,程序运行的话会一直播放
                else:
                    print("关闭")
                    exit()


        except Exception:
            print("请您输入正确的序号")
            MusicRj.listen()



if __name__ == '__main__':
    # 调用
    from MusicRj import MusicRj
    # MusicRj.insert()
    MusicRj.listen()

posted @ 2019-11-28 22:02  谢国宏  阅读(344)  评论(0编辑  收藏  举报