2015-07-10 217 views
1

我對python相當陌生,但這裏有:我正在設計一個代碼,它每隔8秒測量一次while循環中的內容,並根據該度量音樂播放。 它應該是這樣的:在循環播放時播放mp3

previous_state = 0 
while loop_var: 
    #measure something here 
    state = measure_Result 
    if previous_state != state: 
     #change music 
    else: #continue to play the music until state changes 

我如何能做到這一點任何想法?音樂應該繼續播放直到狀態改變,並且當它改變時,另一個音樂應該開始播放。

我試過使用pyglet但我不斷收到一個錯誤,停止了我的循環。我也在研究線程,但它似乎有點超出了我在Python中的舒適區域。錯誤是這個:

意外錯誤裝載庫avbin:[錯誤1114]

感謝所有

+1

嘗試使用['pygame'](http://www.pygame.org)模塊,它有[functions](http://www.pygame.org/docs/ref/music.html)開始並停止播放MP3。 – martineau

+0

我沒有結束使用pygame而不是pyglet :)謝謝 –

回答

0

從設計的角度來看,你可能想在一個單獨的線程播放音樂服務當應用程序的狀態發生變化時會通知您。我不確定你的錯誤是什麼意思,但它可能來自pyglet的使用,它不是爲它設計的。

python中的線程並不算太壞,還有很多教程可用。

+0

謝謝。我查了一下線程,並使用pygame模塊作爲martineau的建議,並能解決我的問題:) –