python使用phonemizer实现获取英文文本句子单词音素

使用 phonemizer 获取英文文本句子单词音素。

安装 phonemizer 库。

pip install phonemizer

具体代码实现如下:

# -*-coding:utf-8-*-
# date:2024-11
# Author: DataBall - XIAN
# Function: 获取英文文本句子单词音素
from phonemizer import phonemize
from phonemizer.backend import EspeakBackend
from phonemizer.punctuation import Punctuation
from phonemizer.separator import Separator
 
# en-gb – 英国英语
# en-us – 美国英语
 
language_ = "en-us" # 语言
 
print("语言类型 :{}".format(language_))
backend = EspeakBackend(language_)
print("\n-------------------------------->>")
text = "hello Tom , my name is Lily  !"
# 整句音素
phonemes = phonemize(text, language=language_, backend='espeak', strip=True)
print("整句文本: {}: ".format(text))
print("整句音素:{}".format(phonemes))
 
print("\n-------------------------------->>")
# 按词分割音素
words = [word for word in text.lower().split(' ')]
# 音素之间用空格分割
phonemes_word = Separator(phone=' ', word=None)
dict_ = {word: backend.phonemize([word], separator=phonemes_word, strip=True)[0] for word in words}
 
print("打印音素字典:")
i = 0
for key_ in dict_.keys():
    i += 1
    if len(dict_[key_])>0: # 去除标点符号干扰
        print(" [{}] {} : {}".format(i,key_,dict_[key_]))

选择语言”en-us“执行log如下:

语言类型 :en-us
 
——————————–>>
整句文本: hello Tom , my name is Lily  !:
整句音素:həloʊ tɑːm maɪ neɪm ɪz lɪli
 
——————————–>>
打印音素字典:
 [1] hello : h ə l oʊ
 [2] tom : t ɑː m
 [4] my : m aɪ
 [5] name : n eɪ m
 [6] is : ɪ z
 [7] lily : l ɪ l i

选择语言”en-gb“执行log如下:

语言类型 :en-gb
 
——————————–>>
整句文本: hello Tom , my name is Lily  !:
整句音素:hələʊ tɒm maɪ neɪm ɪz lɪli
 
——————————–>>
打印音素字典:
 [1] hello : h ə l əʊ
 [2] tom : t ɒ m
 [4] my : m aɪ
 [5] name : n eɪ m
 [6] is : ɪ z
 [7] lily : l ɪ l i

到此这篇关于python使用phonemizer实现获取英文文本句子单词音素的文章就介绍到这了,更多相关python获取英文文本句子单词音素内容请搜索恩蓝小号以前的文章或继续浏览下面的相关文章希望大家以后多多支持恩蓝小号!

原创文章,作者:EKHHO,如若转载,请注明出处:http://www.wangzhanshi.com/n/4772.html

(0)
EKHHO的头像EKHHO
上一篇 2024年12月17日 19:26:01
下一篇 2024年12月17日 19:26:03

相关推荐

  • python-pyinstaller、打包后获取路径的实例

    使用pyinstaller可以把.py文件打包为.exe可执行文件,命令为: pyinstaller hello.py 打包后有两个文件夹,一个是dist,另外一个是build,可…

    2024年12月26日
  • Python、PyTorch与cuda的版本对应表详细介绍

    前言 在深度学习的世界里,选择合适的工具版本是项目成功的关键。CUDA、PyTorch和Python作为深度学习的三大支柱,它们的版本匹配问题不容忽视。错误的版本组合可能导致兼容性…

    Python 2024年12月17日
  • Python之批量创建文件的实例讲解

    批量创建文件其实很简单,只需要按照需要创建写文件、写完关闭当前写文件、创建新的写文件、写完关闭当前文件、、、不断循环即可,以下是一个简单例子,将大文件big.txt按照每1000行…

    Python 2024年12月24日
  • django认证系统 Authentication使用详解

    前言 Django自带一个用户认证系统,用于处理用户账户、群组、许可和基于cookie的用户会话。 Django的认证系统包含了身份验证和权限管理两部分。简单地说,身份验证用于核实…

    Python 2024年12月29日
  • 使用Python实现摇号系统的详细步骤

    前言 在许多场景中,如彩票抽奖、学区房分配、车牌号码分配等,都需要用到随机抽签或摇号系统。本文将介绍如何使用Python来构建一个简单的摇号系统,并提供完整的代码示例。 摇号系统的…

    Python 2024年12月17日
  • 一个不可思议的Python库vnpy示例详解

    前言 vn.py 是一个开源的 Python 交易编程框架,旨在帮助程序员快速搭建属于自己的量化交易平台。该框架支持股票、期货、外汇等多种金融产品的交易,提供了从数据获取…

    Python 2024年12月17日
  • 超全面python常见报错以及解决方案梳理必收藏

    AttribteError: ‘module’ object has no attribute xxx’ 描述:模块没有相关属性。可能出现的原因: 1.命名…

    Python 2025年1月4日
  • 利用Python破解摩斯密码

    在电影《无间道》中,刘建明(刘德华饰)作为黑帮的卧底在一次行动中发现了警察的卧底陈永仁(梁朝伟饰)与黄警督(黄秋生饰)通过摩斯电码进行通讯,经过紧急的群发区域短信 "有内…

    2024年12月24日
  • Python的CGIHTTPServer交互实现详解

    介绍 对于服务器后端开发者而言,有时候需要把自己的一些服务直接暴露给PM或者其他RD使用,这个时候需要搭建一套web服务可以和前端用户做简单交互,按照最常规的做法,一般是用Apac…

    2024年12月24日
  • 基于Python实现简单排行榜功能

    排行榜是一种常见的功能,它可以用于展示和比较数据的排名或分数。在游戏、体育、社交媒体等各种应用中都可以找到排行榜的身影。本文将详细介绍如何使用Python实现排行榜功能,包括排名的…

    Python 2025年1月4日

发表回复

登录后才能评论