我正在重新设计一个基本上可以在命令上播放声音的程序。我正在尝试找到一种随机播放歌曲列表的方法。我对应该发生的事情有基本的了解,但似乎无法找到一种可行的方法。
我尝试了诸如“ time.sleep(1)”和“ .after(毫秒,函数)”之类的东西。
songlist = [["SongName","SongFileName",{length of song in miliseconds}],
["SongName2","SongFileName2",{length of song in miliseconds}]]
def shuffle():
shuffle=True
while shuffle == True:
song=random.choice(songlist)
song2 =random.choice(songlist)
while song==song2:
song2=random.choice(songlist)
label2.config(text=song[0])
winsound.PlaySound(song[1], winsound.SND_ASYNC)
window.after(song[2])
我想让它播放歌曲列表中的随机歌曲,直到按下“停止”按钮(代码中未显示“停止”按钮)
答案 0 :(得分:0)
只为您提供一些起点。这将从列表中随机选择一首歌曲。
cs
答案 1 :(得分:0)
您可以尝试的一件事是使用线程。因此,首先导入线程模块:
Python2.7: from thread import start_new_thread
Python3.x: import threading
然后,您只需调用要与等待函数“并行”运行的方法,就您而言,就是“ playSong”方法:
Python2.7:start_new_thread(playSong, ())
Python3.x:
t = threading.Thread(target=playSong)
t.start()