Код: Выделить всё
import project1_module1
def voice(text):
speech = project1_module1.s_inform(text)
return speech
def home():
while True:
if "Info" in speak:
voice("Please Choose the info which you wanted to know. There are four option weather, economy, news and books. ")
if "weather" in speak:
project1_module3.weather_cast()
continue
elif "economy" in speak:
project1_module3.economy_info()
continue
elif "news" in speak:
project1_module3.news_info()
continue
elif "book" in speak:
project1_module3.book_info()
continue
elif "turn off"in speak:
break
elif "turn off" in speak:
break
home()
Код: Выделить всё
#project1_module1
import os
import time
import playsound
import speech_recognition as sr
from gtts import gTTS
import random
def number_generator():
ran = random.randint(1,5000)
ran = str(ran)
return ran
def s_inform(text):
tts = gTTS(text = text, lang = 'en')
number = number_generator()
fileaname = "Annie"+number+".mp3"
tts.save(fileaname)
playsound.playsound(fileaname)
try:
os.remove(fileaname)
except:
print("I can't")
def get_audio():
r = sr.Recognizer()
with sr.Microphone() as source:
audio = r.listen(source)
said = ""
try:
said = r.recognize_google(audio)
print(said)
except Exception as e:
print("Exception:" + str(e))
return said
Я пытался создать голосового помощника на Python, который распознавал бы мой голос и предоставлял нужную мне информацию, но код не мог распознать мой голос и продолжал показывать мне пустой терминал. Кроме того, когда я запустил этот файл «project1.py», я не смог остановить программу. Я ожидал, что он распознает мой голос и ответит на мой приказ, когда в моей речи была «информация» о мире, и дал мне мир внутри «голоса» (заявленное значение). После этого процесса, когда в моей речи появляется определенная информация (экономика, новости, погода, книги), она должна дать мне ту информацию, которую я хочу, но это не работает. Я также ожидал, что он продолжит свою программу, если я не скажу «выключить», но это тоже не сработало. Я не мог понять ошибку. Я попытался исправить код, в котором структура оператора if() и цикла while() в «projet1.py» (потому что я думал, что это может быть проблема со строкой), функция модуля, которую я объявил в «project.py» ( Я думал, что проблема может быть в функции модуля, которую я объявил в файле модуля) и в самом модуле (project1_module1.py) (например, проблема с распознаванием речи), который позволяет управлять процессом распознавания голоса. Я даже пытался проверить микрофон с помощью проверки звука в окне, чтобы проверить состояние микрофона моего компьютера и наушников, но он прошел нормально, введя обычный звук. Я протестировал модуль, используя распознавание речи и gTTS в другой папке и файле, тот, который не добавляет цикл while(), не имел никаких проблем с ним, но тот, который я добавил while(), имел проблему, поэтому Я прогнозирую, что это может быть проблемой структуры while. Другое различие между моим проектом project1.py и тестовым файлом заключается в том, что project1.py использовал несколько циклов if(), а тестовый файл — нет, но я так и не смог найти решение.
Подробнее здесь:
https://stackoverflow.com/questions/792 ... -while-loo