Skip to main content

A versioned python wrapper package for The CMU Pronouncing Dictionary data files.

Project description

https://travis-ci.org/prosegrinder/python-cmudict.svg?branch=master https://api.codacy.com/project/badge/Grade/a4cd7e19a37d4e578160d3c3e3448101

CMUdict is a versioned python wrapper package for The CMU Pronouncing Dictionary data files, and takes a similar approach to data bundling as Certifi does with Mozilla’s Root Certificates.

Installation

cmudict is available on PyPI. Simply install it with pip:

$ pip install cmudict

You can also install it from source:

$ git clone https://github.com/prosegrinder/python-cmudict.git
Cloning into 'python-cmudict'...
...

$ cd python-cmudict
$ git submodule update --init --recursive
Submodule 'cmudict/data' (https://github.com/cmusphinx/cmudict.git) registered for path 'cmudict/data'...
...

$ python setup.py install
...

Usage

To find the location of installed cmudict data files, you can use the built-in functions:

>>> import cmudict

>>> cmudict.where()
'/usr/local/lib/python2.7/site-packages/cmudict/data/cmudict.dict'

>>> cmudict.where_license()
'/usr/local/lib/python2.7/site-packages/cmudict/data/LICENSE'

>>> cmudict.where_phones()
'/usr/local/lib/python2.7/site-packages/cmudict/data/cmudict.phones'

>>> cmudict.where_symbols()
'/usr/local/lib/python2.7/site-packages/cmudict/data/cmudict.symbols'

>>> cmudict.where_vp()
'/usr/local/lib/python2.7/site-packages/cmudict/data/cmudict.vp'

Data in the files can also be accessed directly as streams (pkg_resources.resource_stream). Note the stream is returned in binary mode, hence the addition of `.decode('utf-8')`:

>>> import cmudict

>>> s = cmudict.stream()
>>> for line in s:
>>>     print(line.decode('utf-8'))
...

>>> s = cmudict.stream_license()
>>> for line in s:
>>>     print(line.decode('utf-8'))
...

>>> s = cmudict.stream_phones()
>>> for line in s:
>>>     print(line.decode('utf-8'))
...

>>> s = cmudict.stream_symbols()
>>> for line in s:
>>>     print(line.decode('utf-8'))
...

>>> s = cmudict.stream_vp()
>>> for line in s:
>>>     print(line.decode('utf-8'))
...

And finally, cmudict has a set of functions compatible with nltk.corpus.reader.cmudict:

>>> import cmudict

>>> d = cmudict.dict()
...

>>> e = cmudict.entries()
...

>>> r = cmudict.raw()
...

>>> w = cmudict.words()
...

Credits

Built on or modeled after the following open source projects:

Project details


Download files

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

Source Distribution

cmudict-0.3.0.tar.gz (936.2 kB view hashes)

Uploaded Source

Built Distribution

cmudict-0.3.0-py2.py3-none-any.whl (940.9 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page