使用Python说出单词的意思
下面的文章展示了如何通过使用两个名为 pyttsx3 和 PyDictionary 的模块,让我们的系统说出作为输入给出的单词的含义。当我们想要获得特定单词的含义时,模块会说出含义。
需要的模块
- PyDictionary:它 是Python 2-3 的字典模块,用于获取单词的含义、翻译、同义词和反义词。它使用 WordNet 来执行其功能建议,并依赖于名为 Requests、BeautifulSoup4 和 goslate 的模块。
- pyttsx3:它是一个文本到语音库。该模块为我们的系统提供语音,以便他们可以与我们交流。 Pyttsx3 在 windows 中使用 sapi5,在 windows 中使用 espeak。
可以通过以下方式使用 pip 安装这两个模块:
pip install PyDictionary
pip install pyttsx3
在职的
如上所述,通过两个模块的组合,我们将生成所需的功能,并采取以下步骤:
- 定义了一种方法,使系统搜索作为输入提供的单词的含义
- 另一种方法被定义为使系统大声说出与提供的输入相对应的输出。
- 这里返回的输出可能是字典,因此我们必须提取所提供单词的每个含义,因为它将采用键值格式。
下面是实现。
Python3
import pyttsx3
from PyDictionary import PyDictionary
class Speaking:
def speak(self, audio):
# Having the initial constructor of pyttsx3
# and having the sapi5 in it as a parameter
engine = pyttsx3.init('sapi5')
# Calling the getter and setter of pyttsx3
voices = engine.getProperty('voices')
# Method for the speaking of the the assistant
engine.setProperty('voice', voices[0].id)
engine.say(audio)
engine.runAndWait()
class GFG:
def Dictionary(self):
speak = Speaking()
dic = PyDictionary()
speak.speak("Which word do u want to find the meaning sir")
# Taking the string input
query = str(input())
word = dic.meaning(query)
print(len(word))
for state in word:
print(word[state])
speak.speak("the meaning is" + str(word[state]))
if __name__ == '__main__':
GFG()
GFG.Dictionary(self=None)
输出: