{"id":6038,"library":"pronouncing","title":"Pronouncing","description":"Pronouncing is a lightweight Python library providing a simple interface to the CMU Pronouncing Dictionary. It allows users to programmatically access phonetic pronunciations, find rhyming words, count syllables, and search for words based on phonetic patterns. The current version is 0.2.0, with releases historically being infrequent, the last major update in 2018.","status":"active","version":"0.2.0","language":"en","source_language":"en","source_url":"https://github.com/aparrish/pronouncingpy","tags":["natural language processing","phonetics","rhyme","pronunciation","linguistics"],"install":[{"cmd":"pip install pronouncing","lang":"bash","label":"Install Pronouncing"}],"dependencies":[{"reason":"Provides the CMU Pronouncing Dictionary data. As of version 0.2.0, the dictionary data was removed from the 'pronouncing' package and is now a dependency on 'cmudict'.","package":"cmudict","optional":false}],"imports":[{"symbol":"pronouncing","correct":"import pronouncing"}],"quickstart":{"code":"import pronouncing\n\nword = \"climbing\"\nrhymes = pronouncing.rhymes(word)\nprint(f\"Rhymes for '{word}': {rhymes}\")\n\npronunciations = pronouncing.phones_for_word(word)\nprint(f\"Pronunciations for '{word}': {pronunciations}\")\n\nsyllables = pronouncing.syllable_count(pronunciations[0]) # Use the first pronunciation for syllable count\nprint(f\"Syllable count for '{word}': {syllables}\")","lang":"python","description":"This quickstart demonstrates how to find rhymes, retrieve phonetic pronunciations in ARPAbet, and count syllables for a given word using the `pronouncing` library."},"warnings":[{"fix":"Ensure `cmudict` is installed alongside `pronouncing`. `pip install pronouncing` should handle this, but manual intervention might be needed for older environments or direct source installations. `pip install cmudict`","message":"Version 0.2.0 removed the CMU Pronouncing Dictionary data directly from the package. It now relies on the `cmudict` package as a dependency to provide this data. If upgrading from an older version (pre-0.2.0), ensure `cmudict` is installed.","severity":"breaking","affected_versions":"<0.2.0"},{"fix":"Applications using `phones_for_word()` should implement their own criteria for selecting the appropriate pronunciation from the returned list, based on their specific use case (e.g., always taking the first, or applying a custom ranking).","message":"The `pronouncing.phones_for_word()` function can return multiple pronunciations for a single word, reflecting different possible ways a word can be spoken. The library does not provide built-in logic to determine the 'best' or 'most common' pronunciation.","severity":"gotcha","affected_versions":"0.1.1 and later"},{"fix":"Be aware of the library's maintenance status. For projects requiring active development, frequent updates, or new linguistic features, consider alternatives or be prepared to fork and maintain the library yourself.","message":"The library's development seems to be low-activity, with the last release (0.2.0) in 2018. While functional, new features or active maintenance should not be expected.","severity":"gotcha","affected_versions":"0.2.0"}],"env_vars":null,"last_verified":"2026-04-14T00:00:00.000Z","next_check":"2026-07-13T00:00:00.000Z"}