2017-11-05 29 views
1

なぜ以下のコードがサウンドを再生しないのでしょうか? s.play()がclock()関数の外にある場合、それは機能します。pygameのサウンドがtime.sleep()関数の後に再生されない

import time 
import pygame 

pygame.init() 
s = pygame.mixer.Sound("0614.wav") 

def clock(): 
    x = input("How long to start the alarm for? ") 
    delay = float(x) 
    print ("Alarm Started") 
    time.sleep(delay) 
    print ("!!!!ALARM!!!!!") 
    s.play() 

clock() 
+0

[この回答](https://stackoverflow.com/a/23826081/6220679)をご覧ください。 'pygame.init()'を 'pygame.mixer.init()'に置き換えるか、pygameウィンドウを開きます: 'screen = pygame.display.set_mode((width、height))'。 'pygame.init()'の前に 'pygame.mixer.init()'を呼び出すこともできます。 – skrx

答えて

0

ファイル "0614.wav"は、プログラムの実行と同じフォルダにありますか?

エラーを表示するには、try-exceptブロックを使用し、エラーを出力します。

+0

はい、* .pyファイル自体と同じフォルダです。また、問題は私にエラーがないことです。コードは正常終了し、 "!!! ALARM !!!"指定された遅延の後の行。その音は決して演奏されません。 – Anubhav