入力したテキストを単純に繰り返すプログラムを作成中で、最初にテストしたときに動作していたようです。問題は、もう一度タイプしようとするとクラッシュし、録音していたサウンドファイルに許可が拒否されたということです。私はファイルがすでに開かれているからだと信じていますが、それを修正する方法がわからないほどです。私はgTTSとPygameモジュールを使用しています。pythonでサウンドファイルを再オープンしているときにエラーが発生しました
from gtts import gTTS
from tempfile import TemporaryFile
from pygame import mixer
#Plays Sound
def play():
mixer.init()
mixer.music.load("Speech.mp3")
mixer.music.play()
#Voice
def voice(x):
text = gTTS(text= x, lang= 'en')
with open("Speech.mp3", 'wb') as f:
text.write_to_fp(f)
f.close()
play()
#Prompts user to enter text for speech
while True:
voice_input = input("What should Wellington Say: ")
voice(voice_input)
コンテキストマネージャが開いているので、手動で 'f'を閉じる必要はありません。コンテキストマネージャを終了すると、ファイルは自動的に閉じられます。 – nbryans
ありがとう、それを知らなかったが、それは同じ時点でまだクラッシュしている。 –
クラッシュする行を教えてくれますか?保護されたディレクトリで実行していますか? – nbryans