我希望能够通过一个播放列表使用python播放多首歌曲,但它只会播放列表中的最后一首歌。请帮帮忙。
from pygame import mixer # Load the required library
from os import listdir
k = listdir('C:/LOCAL')
print(k)
mixer.init()
for x in k:
y = "C:/LOCAL/" + x
print y
mixer.music.queue(y)
mixer.music.load(y)
mixer.music.play()发布于 2016-04-10 17:30:12
你的问题是,你认为用游戏玩音乐会暂停程序,直到音乐结束--事实并非如此。结果,它尝试开始一首歌,然后又开始另一首,等等。
有几种方法试图纠正这一点。你可以:
我将假设您希望使用选项2,因为您的代码与它一起运行得更好。
要获得MP3文件的长度(我还没有尝试过任何其他类型),您可以使用诱变剂库。
获取MP3文件长度的一些示例代码(以秒为单位):
from mutagen.mp3 import MP3
tracklength = MP3("/path/to/song.mp3").info.length然后,您可以用y和time.sleep替换路径,以代替返回的时间,然后继续循环的下一次迭代。
希望这能有所帮助。
(而且,在加载文件之前不需要排队--只有load和play)
https://stackoverflow.com/questions/36532668
复制相似问题