discover the etymology of words
A Python module to discover the etymology of words :book:
Recently, @jmsv and @parker57 started a side project to analyse etymologies of text written by various historical authors, expecting there to already be a library for retrieving etymology data. On discovering that this wasn't the case, ety was created!
There isn't a single source of truth for etymologies; words' origins can be heavily disputed. This package's source data, Gerard de Melo's Etymological Wordnet, is mostly mined from Wiktionary. Since this is a collaboratively edited dictionary, its data could be seen as the closest we can get to a public consensus
pip install ety
In a virtual environment - Pipenv is recommended:
python setup.py install
>>> import ety >>> ety.origins("potato") [Word(batata, language=Taino)] >>> ety.origins('drink', recursive=True) [Word(drync, language=Old English (ca. 450-1100)), Word(drinken, language=Middle English (1100-1500)), Word(drincan, language=Old English (ca. 450-1100))] >>> print(ety.tree('aerodynamically')) aerodynamically (English) ├── -ally (English) └── aerodynamic (English) ├── aero- (English) │ └── ἀήρ (Ancient Greek (to 1453)) └── dynamic (English) └── dynamique (French) └── δυναμικός (Ancient Greek (to 1453)) └── δύναμις (Ancient Greek (to 1453)) └── δύναμαι (Ancient Greek (to 1453))
After installing, a command-line tool is also available.
ety -h outputs the following help text describing arguments:
usage: ety [-h] [-r] [-t] words [words ...] positional arguments: words the search word(s) optional arguments: -h, --help show this help message and exit -r, --recursive search origins recursively -t, --tree display etymology tree
$ ety drink drink # List direct origins • drync (Old English (ca. 450-1100)) • drinken (Middle English (1100-1500)) $ ety drink -r # Recursive search drink • drync (Old English (ca. 450-1100)) • drinken (Middle English (1100-1500)) • drincan (Old English (ca. 450-1100)) $ ety drink -t # Etymology tree drink (English) ├── drinken (Middle English (1100-1500)) │ └── drincan (Old English (ca. 450-1100)) └── drync (Old English (ca. 450-1100))
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|ety-1.3.1-py2.py3-none-any.whl (2.6 MB) Copy SHA256 hash SHA256||Wheel||py2.py3|
|ety-1.3.1.tar.gz (2.6 MB) Copy SHA256 hash SHA256||Source||None|