如何在 Python 中将文本转换为语音2025年4月16日 | 阅读 4 分钟 在本教程中,我们将学习如何将人类语言文本转换为类似人类的语音。 有时我们更喜欢听内容而不是阅读。在听重要文件数据时,我们可以同时处理多项任务。 Python 提供了许多将文本转换为语音的 API。Google Text to Speech API 很受欢迎,通常称为 gTTS API。 使用此工具非常简单,它提供了许多内置函数,可以将文本文件保存为 mp3 文件。 我们不需要使用神经网络来训练模型将文件转换为语音,因为这也很难实现。相反,我们将使用这些 API 来完成任务。 gTTS API 提供了将文本文件转换为不同语言的功能,例如英语、印地语、德语、泰米尔语、法语等等。我们还可以以快或慢的速度播放音频语音。 但是,根据其最新更新,我们无法更改语音文件;它将由系统生成,无法更改。 要将文本文件转换为语音,我们将使用另一个名为 pyttsx3 的离线库。 gTTS API 的安装在终端中键入以下命令来安装 gTTS API。 然后,安装其他模块以与 gTTS 一起使用。 然后安装 pyttsx3。 让我们来理解 gTTS API 的工作原理 正如我们所见,它非常易于使用;我们需要导入它并传递 gTTS 对象,该对象是 Google Translator API 的接口。 在上面的行中,我们发送了文本数据并收到了实际的音频语音。现在,将此保存为音频文件 welcome.mp3。 它将保存在一个目录中,我们可以按如下方式收听此文件 输出 ![]() 请打开系统音量,收听我们之前保存的文本。 现在,我们将定义完整的文本转语音 Python 程序。 Python 程序输出 ![]() 说明 在上面的代码中,我们导入了 API 并使用了 gTTS 函数。 gTTS() 函数接受三个参数 -
我们将此文件保存为 exam.py,可以随时访问,然后我们使用 playsound() 函数在运行时收听音频文件。 可用语言列表要获取可用语言,请使用以下函数 - 输出 {'af': 'Afrikaans', 'sq': 'Albanian', 'ar': 'Arabic', 'hy': 'Armenian', 'bn': 'Bengali', 'bs': 'Bosnian', 'ca': 'Catalan', 'hr': 'Croatian', 'cs': 'Czech', 'da': 'Danish', 'nl': 'Dutch', 'en': 'English', 'et': 'Estonian', 'tl': 'Filipino', 'fi': 'Finnish', 'fr': 'French', 'de': 'German', 'el': 'Greek', 'en-us': 'English (US)','gu': 'Gujarati', 'hi': 'Hindi', 'hu': 'Hungarian', 'is': 'Icelandic', 'id': 'Indonesian', 'it': 'Italian', 'ja': 'Japanese', 'en-ca': 'English (Canada)', 'jw': 'Javanese', 'kn': 'Kannada', 'km': 'Khmer', 'ko': 'Korean', 'la': 'Latin', 'lv': 'Latvian', 'mk': 'Macedonian', 'ml': 'Malayalam', 'mr', 'en-in': 'English (India)'} 我们列出了 一些重要 的语言及其代码。您可以在此库中找到几乎所有语言。 离线 API我们使用了 Google API,但如果我们想使用离线方式将文本转换为语音呢?Python 提供了 pyttsx3 库,它会查找我们平台上预先安装的 TTS 引擎。 让我们来理解如何使用 pyttsx3 库 示例 - 在上面的代码中,我们使用了 say() 方法并将文本作为参数传递。它用于将要说的单词添加到队列中,而 runAndWait() 方法会运行实际的事件循环,直到所有排队的命令都完成。 它还提供了一些附加属性,我们可以根据需要使用。让我们获取语速的详细信息 输出 200 如果我们将其设置为 100,则速度会变慢。 现在,我们可以在各种语音中听到文本文件。 输出 [<pyttsx3.voice.Voice object at 0x000002D617F00A20>, <pyttsx3.voice.Voice object at 0x000002D617D7F898>, <pyttsx3.voice.Voice object at 0x000002D6182F8D30>] 在本教程中,我们讨论了使用第三方库将文本文件转换为语音。我们还讨论了离线库。通过使用这些,我们可以构建自己的虚拟助手。 下一主题Python 中的冒泡排序 |
本教程将讨论一个有趣的 Python 复杂数字项目。我们将学习分形,并使用 Mandelbrot 集的插图与 Python 的 Matplotlib 和 Pillow 库创作令人惊叹的艺术作品。我们还将找出实现过程……
14 分钟阅读
? 是的,Python 是一种脚本语言、通用、高级和解释型编程语言。它还提供面向对象编程方法。Python 的文件名扩展名可以是多种类型,例如 .py、.pyw、.pyc、.pyd、.pyz。什么是脚本语言?脚本语言指的是执行基于...
阅读1分钟
我们在处理各种应用程序和网站上的各种任务时,都看到过各种消息框。这些消息框有不同的类型,如警报消息框、确认消息框、密码消息框以及许多其他类型。这些不同类型的消息框...
7 分钟阅读
:分步指南 Python 是世界上最流行的编程语言之一,以其简洁性、可读性和多功能性而闻名。无论您的编程知识水平如何,学习 Python 都可以扩展您的工作或副项目的选择。本文将为您提供...
阅读 4 分钟
在寻找监控基础设施或第三方应用程序时,Telegraph 的内置插件成为我们的绝佳选择。或者我们正在关注系统资源,如磁盘和网络利用率或 MySQL 数据库的性能。如果我们正在创建一个应用程序...
阅读9分钟
先决条件:Python 中的循环,Python 中的跳转语句 - break continue 语句是第二个跳转语句,它为我们提供循环控制。在本文中,我们将学习 continue 语句的功能和重要性。我们之前讨论过 break 语句。它终止整个循环...
5 分钟阅读
在本教程中,我们将学习 Python 中的 currying,这是一个在 Python 中比较新的概念。大多数开发者可能不熟悉这个主题。我们将解释 currying 的概念、它的用例以及如何在 Python 中实现它。让我们开始……
阅读 6 分钟
scipy.stats.lognorm() 描述了对数正态连续随机变量。它是继承自通用方法的 rv_continuous 类的一个实例。它通过添加特定于此分布的详细信息来完善这些方法。给出对数正态分布的概率密度函数由下式给出:概率密度函数...
阅读 3 分钟
在本文中,我们将讨论将函数作为参数传递给 Python。函数可以接受多个参数。这些参数可以是对象、变量(相同或不同数据类型)和函数。Python 函数是第一批优雅的小工具。在以下实例中,一个特性...
阅读 4 分钟
我们可以通过多种方式对Python列表进行排序。有各种算法被设计用来对列表进行排序。对一维Python列表进行排序非常直接。它需要直接应用一种可用的算法。然而,给定一个嵌套的Python列表,基于什么...
阅读 6 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India