Skip to content Skip to footer

用Python给英语单词批量划分音节

一、问题的缘起

最近,有网友在我的视频下面留言,问我可否把英语单词进行音节的划分?我以前也有同样的想法,但是始终没有得到解决。但是,我想使用python,学习英语的人都很多,说不定有人已经编写了类似的模块供我们调用呢?

问题截图

于是,我就抱着试试看的心情,在网上搜了一下,果然,某搜索引擎上,已经给出了答案,经过测试,我发现这个pyphen是一个不错的模块,它可以自动把任意单词按照音节来划分,不同的音节中间添加"-",正好符合网友的要求,于时我就尝试探索了一下,结果还不错。

二、下载安装pyphen

这个模块需要在cmd下使用以下命令进行安装:

pip install pyphen

然后通过以下代码导入这个模块:

from pyphen import Pyphen

接着我们需要传入语言代码,英语的语言代码是:en_US,根据官网(http://pyphen.org)显示,这个模块支持37种语言。语言列表如下所示,这里面包括德语、法语、捷克语、丹麦语等,基本上都是欧洲的语言,可谓功能十分强大。

序号英文中文1Afrikaans南非荷兰语2Albanian阿尔巴尼亚语3Belarusian白俄罗斯语4Bulgarian保加利亚语5Catalan加泰罗尼亚语6Croatian克罗地亚语7Czech捷克语8Danish丹麦语9Dutch荷兰语10English (Great-Britain and United-States)英语(英美)11Esperanto世界语12Estonian爱沙尼亚语13French法语14Galician加利西亚语15German (Austria, Germany and Switzerland)德语(奥地利、德国和瑞士)16Greek希腊语17Hungarian匈牙利语18Icelandic冰岛语19Indonesian印度尼西亚语20Italian意大利语21Lithuanian立陶宛语22Latvian拉脱维亚语23Mongolian蒙古语24Norwegian (Bokmål and Nynorsk)挪威语(书面语和新挪威语)25Polish波兰语26Portuguese (Brazil and Portugal)葡萄牙语(巴西和葡萄牙)27Romanian罗马尼亚语28Russian俄语29Serbian (cyrillic and latin)塞尔维亚语(西里尔字母和拉丁字母)30Slovak斯洛伐克语31Slovenian斯洛文尼亚语32Spanish西班牙语33Swedish瑞典语34Telugu泰卢固语35Thai泰语36Ukrainian乌克兰语37Zulu祖鲁语

三、给英语单词划分音节

导入了这个划分音节的模块,下一步就可以轻松划分音节了。以下是人工智能给出的部分代码:

from pyphen import Pyphen

# 创建一个Pyphen对象,需要传入语言代码和可选的字典文件

# 如果不指定字典文件,pyphen将会使用在线服务

# 这里使用英语,并假设你已经有了英语的字典文件

# 文件路径可以是相对路径或者绝对路径

ph = Pyphen(lang='en_US', dict_path='path_to_your_dictionary_file.dict')

# 使用音节划分功能

word = 'revolution'

hyphenated = ph.inserted(word) # 返回音节划分后的单词

print(hyphenated) # 输出可能会是're-volu-tion'

对于英语单词音节的划分,我们可以省去导入字典,简化上述代码如下:

from pyphen import Pyphen

ph = Pyphen(lang='en_US')

# 使用音节划分功能

word = 'application'

hyphenated = ph.inserted(word) # 返回音节划分后的单词

print(hyphenated) # 输出可能会是'ap-pli-ca-tion'

以下是在Win7系统下测试成功的截图:

测试成功截图

如果是对于多个单词的音节切分,我们可以先把单词格式化为列表,再用for循环来遍历完成,这里就不再赘述。

四、学后总结

经过以上的操作,我终于可以在我多个软件中实现对单词音节的划分了,一下子把软件提升了一个档次。

这种音节划分无疑为学生牢固掌握单词的发音,熟悉单词的音节,更好练好口语提供了较好的方法。

更多的模块信息大家可以参考其在github上的仓库:GitHub - Kozea/Pyphen: Hy-phen-ation made easy

Copyright © 2088 我的世界杯_瑞奇马丁世界杯主题曲 - msdc8.com All Rights Reserved.
友情链接