Задать вопрос
@RieldaBot
Начинающий программист Python

Как сделать ответ по имени?

Как сделать чтобы ассистент отвечал только когда говорят его имя, к примеру: когда говоришь привет - он не отвечает, когда говоришь Жора привет - тогда он отвечает привет.

мой код:
import speech_recognition

sr = speech_recognition.Recognizer()
sr.pause_threshold = 0.5

commands_dict = {
    'commands': {
        'greeting': ['привет', 'приветствую']
    }
}

def listen_command():    
    try:
        with speech_recognition.Microphone() as mic:
            sr.adjust_for_ambient_noise(source=mic, duration=0.5)
            audio = sr.listen(source=mic)
            query = sr.recognize_google(audio_data=audio, language='ru-RU').lower()
            
        return query
    except speech_recognition.UnknownValueError:
        return 'Не понял что ты сказал :/'

def greeting():
    return 'Приветики!'

def main():
    query = listen_command()
    
    for k, v in commands_dict['commands'].items():
        if query in v:
            print(globals()[k]())
        
if __name__ == '__main__':
    main()
  • Вопрос задан
  • 172 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 2
@Kadabrov
если первое слово Жора то ...
Ответ написан
Комментировать
@Kvason
Веб-разработчик
Получаешь строку которую сказал юзер, делаете .split() и получаешь список слов и дальше проверяешь равен ли первый элемент слову Жора
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы