Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Python Module to get meanings, translations, synonyms and antonyms of words

Project description

PyDictionary: A “Real” Dictionary Module for Python

PyDictionary is a Dictionary Module for Python 2/3 to get meanings,

translations, synonyms and Antonyms of words. It uses WordNet for

getting meanings, Google for translations, and for getting

synonyms and antonyms.

This module uses Python Requests, BeautifulSoup4 and goslate as



Installation is very simple through pip (or easy_install)

For pip

pip install PyDictionary

For Easy_Install

easy_install -U PyDictionary


PyDictionary can be utilised in 2 ways, either by creating a dictionary

instance which can take words as arguments or by creating a dictionary

instance with a fixed amount of words.

For example,

from PyDictionary import PyDictionary


This is will create a local instance of the PyDictionary class and now

it can be used to get meanings, translations etc.

print (dictionary.meaning("indentation"))

This will return a dictionary containing the meanings of the word. For

example the above code will return:

{'Noun': ['a concave cut into a surface or edge (as in a coastline', 'the

 formation of small pits in a surface as a consequence of corrosion', 'th

e space left between the margin and the start of an indented line', 'the

act of cutting into an edge with toothlike notches or angular incisions']


The dictionary keys are the different types of the word. If a word is

both a verb and a noun then there will be 2 keys:’Noun’ and ‘Verb’. Each

key refers to a list containing the meanings

For Synonyms,

print (dictionary.synonym("Life"))

This will return a list containing the Synonyms of the word.

For Antonyms,

print (dictionary.antonym("Life"))

This will return a list containing the Antonyms of the word.

For Translations,

print (dictionary.translate("Range",'es'))

This will return the Translation of the word “Range” in Spanish. For

Language codes consult Google Translate. The return value is String in

Python 3 and Unicode in Python 2

Alternatively, you can set a fixed number of words to the PyDictionary

Instance. This is useful if you just want to get the meanings of some

words quickly without any development need.


from PyDictionary import PyDictionary


'There can be any number of words in the Instance'

print(dictionary.printMeanings()) '''This print the meanings of all the words'''

print(dictionary.getMeanings()) '''This will return meanings as dictionaries'''

print (dictionary.getSynonyms())

print (dictionary.translateTo("hi")) '''This will translate all words to Hindi'''

Similarly Synonyms and Antonyms can also be printed onto the screen.

Using the PyDictionary API

I’m very happy to say that the PyDictionary API has been launched.

It’s very easy to use and it returns Meanings, Antonyms, Synonyms and

Translations in JSON. It runs on Red Hat Open Shift Servers and it uses



For meanings,[word]

For Antonyms,[word]

For Synonyms,[word]

For Translations,[code]/[word]

Replace word with the word parameter and ‘code’ with the Google

Translate Language code

Apps using PyDictionary

Check this awesome pygame windows game created by RajK853 that improves

your vocabulary by using PyDictionary:


Download link: Vocab ###About

The source is in the file. Feel free to check it out.

Created By Pradipta. Copyright 2014

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for PyDictionary, version 1.5.2
Filename, size File type Python version Upload date Hashes
Filename, size (9.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page