如何解决如何使用Speech_recognizer检查我是否说过列表中包含的单词之一
我正在尝试创建一个小程序,如果我说的话(不仅是一个单词,而且是一个短语)(使用Speech_recognizer)中包含一个单词,并且该单词包含在单词列表(word_list)中,该程序应该打印一些内容。同样,如果我说一个或另一个单词,输出也会发生变化,因此我需要检查确切是哪个单词。
import speech_recognition as sr
word_list = ['Giotto','Raffaello','Michelangelo']
recognizer_instance = sr.Recognizer()
with sr.Microphone() as source:
recognizer_instance.adjust_for_ambient_noise(source)
print("I'm listening...")
audio = recognizer_instance.listen(source)
print('Printing what I heard...')
try:
text = recognizer_instance.recognize_google(audio,language='it-IT')
print(text)
except Exception as e:
print(e)
这是目前的代码,我不知道如何检查text_variable中包含的单词之一是否在我的word_list中
解决方法
如果您只想查看列表中所说的内容,可以使用:
if text in word_list:
#Some logic
如果变量的True
内容位于text
内,它将返回word_list
。
编辑:
您可以定义字典而不是列表,并像这样存储每个艺术家的简历:
artists_bio = {'artist1': 'artist1 bio','artist2': 'artist2 bio'...}
然后,如果识别器听到匹配的单词,则可以打印此简历:
if text in artist_bio.keys():
print(artist_bio[text])
EDIT2:
如果您的文本是一个完整的句子,则可以先将其拆分,然后再使用与以前相同的逻辑。
list_text = text.split(' ')
for text in list_text:
if text in artist_bio.keys():
print(artist_bio[text])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。