Speak the meaning of the word using Python
Last Updated :
28 Jun, 2022
The following article shows how by the use of two modules named, pyttsx3 and PyDictionary, we can make our system say out the meaning of the word given as input. It is module which speak the meaning when we want to have the meaning of the particular word.
Modules needed
- PyDictionary: It is a Dictionary Module for Python 2-3 to get meanings, translations, synonyms and Antonyms of words. It uses WordNet for doing as its functionality suggests and has dependencies on modules named Requests, BeautifulSoup4 and goslate .
- pyttsx3: It is a text to speech library. This module is what gives our system voice so that they can communicate with us. Pyttsx3 uses sapi5 in windows and espeak in windows.
Both modules can be installed by using pip in the following way:
pip install PyDictionary
pip install pyttsx3
Working
As mentioned above, by the combination of two modules we will generate the functionality required and to do that the following steps were taken:
- A method is defined to make the system search for the meaning of the word provided as input
- Another method is defined to make the system say out loud the output generated corresponding to the input provided.
- The output returned in this may be a dictionary, so we have to extract each meaning of the word provided as it will be in a key-value format.
Below is the Implementation.
Python3
import pyttsx3
from PyDictionary import PyDictionary
class Speaking:
def speak( self , audio):
engine = pyttsx3.init( 'sapi5' )
voices = engine.getProperty( 'voices' )
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" )
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 )
|
Output:
Share your thoughts in the comments
Please Login to comment...