Python Pronouncing 模块

17 Mar 2025 | 6 分钟阅读

要找到给定单词的押韵词并非易事,当我们写诗或押韵段落时,这会变得更加困难。我们中的许多人可能听说过 CMU 发音词典,以及它在产生押韵词方面的作用。对于不了解 CMU 词典的人来说,它是一个开源的发音词典,任何人都可以使用它来查找押韵词,并且是由卡内基梅隆大学的语音组创建的。由于它是一个开源词典,任何人都可以免费使用,它最初是为语音识别研究设计的。如果我们对给定单词的押韵词没有任何想法,并正在寻找它们,我们可以使用这个完全免费的 CMU 词典。该词典提供了英语语言中任何单词的所有可用押韵词。我们只需访问他们的网站,然后在搜索框中键入给定的单词;结果将显示在搜索框中给定单词的所有押韵词。这样,我们就可以轻松找到任何给定单词的押韵词,而无需花费太多时间思考所有押韵词。

许多编程语言还提供了可用的软件包,例如 CMU 发音词典,用于查找任何给定英语单词的押韵词。具体来说,Python 拥有 pronouncing 包,它是 CMU 发音词典的一个非常简单的接口,我们可以在 Python 程序中使用此包来查找程序中给定单词的押韵词。因此,在本教程中,我们将学习 Python 的这个发音模块。我们将学习它的安装以及如何使用此模块来查找程序中给定单词的押韵词。

Python 发音模块简介

Pronouncing 模块或库是 Python 中 CMU 发音词典的一个简单接口,任何人都可以使用它来查找押韵词并执行使用 CMU 发音词典可以执行的其他操作。Python 中已经有许多可用的包可以用来查找押韵词,但这个模块最好的地方在于,它在执行操作时不需要任何外部依赖,而且非常易于使用。Python 的 pronouncing 模块的创建是为了让人们可以在 Python 程序中使用 CMU 发音词典的接口,而无需安装 NLTK 或其他大型库。使用此模块的函数非常简单,任何人都可以在任何 Python 程序中使用此模块来查找程序中给定单词的押韵词。此模块节省了大量时间,我们可以将这些时间浪费在手动思考或查找给定单词的押韵词上。我们只需在 Python 程序中使用此模块的函数,所有与给定单词相关的押韵词都将在输出中显示。

Python 中的发音模块:安装

Python 的 pronouncing 模块不是 Python 的内置模块,这意味着当我们安装 Python 源文件到我们的机器上时,它不会预装在我们的系统中。此模块需要从外部安装,这就是为什么我们必须执行安装过程来安装此模块到我们的系统中。就像使用此模块一样,安装它也很容易,因为我们对此模块没有外部依赖。我们可以通过多种安装过程来安装 Python 的 pronouncing 模块,但使用 pip 安装程序方法是最简单易行的。因此,在本节中,我们将使用 pip 安装程序方法安装此模块,要使用此安装方法,我们必须在系统的命令提示符 shell 中输入以下 pip 命令:

在输入上述安装命令后,我们只需按“回车”键,pronouncing 模块的安装就会开始。当此模块的安装过程开始时,我们将不得不等待一段时间,因为此模块的安装完成需要一些时间。

Python Pronouncing Module

正如我们所见,Python 的 pronouncing 模块现在已成功安装在我们的系统中,并且命令提示符 shell 的屏幕上显示了“成功安装”。现在,我们可以在任何 Python 程序中导入 pronouncing 模块,使用它的函数,并通过这些函数来查找程序中给定单词的押韵词。

Python 中的发音模块:实现

现在,我们将学习此模块如何工作以及如何使用此模块的函数来查找给定单词的押韵词。我们将通过在示例程序中导入和使用这些函数来理解此模块的实现。我们将在示例程序中使用此模块的函数,并找出该示例程序中给定单词的押韵词。我们将使用此模块的 rhymes() 函数来执行此操作。以下是使用 pronouncing 模块的 rhymes() 函数的语法:

正如我们所见,rhymes() 函数将给定的单词(其押韵词将作为结果显示)作为参数。

查看以下示例程序以了解此 pronouncing 模块的实现:

示例 1:查看以下 Python 程序,我们在其中使用 pronouncing 模块查找押韵词:

输出

The rhyming words of the word Shine are: 
['affine', 'align', 'aline', 'assign', 'barentine',  .. 'vine', 'whine', 'whine', 'wine', 'wyne', 'zine']

Python Pronouncing Module

正如我们所见,单词“Shine”的押韵词已打印在输出中,这就是我们如何使用此模块打印任何给定单词的押韵词。

解释:首先,我们在程序中将 pronouncing 模块导入为 prn,以便使用此模块的 rhymes() 函数。之后,我们使用了 rhymes() 函数,并在其中使用了“Shine”这个词,以便获取所有与“shine”相关的押韵词。我们将此操作的结果存储在 rhymResult 变量中,以便我们可以使用此变量来打印结果。最后,我们使用带有 rhymResult 变量的 print 语句,作为函数中执行的操作的结果,在输出中打印与“Shine”相关的押韵词。

从用户那里获取单词输入并查找其押韵词

在以下程序中,我们将执行与第一个示例程序相同的操作,但在这里,我们将从用户那里获取单词输入。查看以下示例程序以了解此实现:

输出

Please enter a word to find its rhyming words: Meta
The rhyming words of the word given by you are: 
['akita', 'alita', 'alvita', 'amelita', 'amezquita', ....., ita', 'tita', 'tomita', 'unita', 'velveeta', 'venita', 'vernita', 'vinita', 'yamashita', 'zita']

Python Pronouncing Module