老大给了个新需求:如何将汉字转换成拼音字母?1行Python代码搞定!

举报
程序员晚枫 发表于 2023/06/24 01:17:10 2023/06/24
【摘要】 好用

大家好,这里是程序员晚枫,小红薯也叫这个名。

之前的视频给大家分享了:中文编程,一行代码实现。

今天给大家分享一下,如何通过1行Python代码,实现汉语转拼音

1、先上代码

实现汉语转拼音效果的第三方库是:pohan,免费下载&安装命令如下:

pip install pohan

1行代码,实现汉语转拼音的效果。

# pip install pohan
import pohan
from pohan.pinyin.pinyin import Style

# 不带声调的
pinyin_list = pohan.pinyin.han2pinyin("程序员晚枫", style=Style.NORMAL)
print(f'我是不带声调的结果:{pinyin_list}')

# 带声调的
pinyin_list = pohan.pinyin.han2pinyin("程序员晚枫", style=Style.TONE)
print(f'我是带声调的结果:{pinyin_list}')


# 带数字声调的
pinyin_list = pohan.pinyin.han2pinyin("程序员晚枫", style=Style.TONE3)
print(f'我是带数字声调的结果:{pinyin_list}')

以上代码运行的结果,如下图所示:

2、参数说明

1行代码实现功能,可以填入的参数有以下几个(小白可以不填,都有默认值):

  • hans (unicode 字符串或字符串列表) – 汉字字符串( ‘程序员晚枫’ )或列表( [‘程序员’, ‘晚枫’] ). 可以使用自己喜爱的分词模块对字符串进行分词处理,
    只需将经过分词处理的字符串列表传进来就可以了。

  • style: 指定拼音风格,默认是 TONE 风格。 更多拼音风格详见 Style

  • errors: 指定如何处理没有拼音的字符。详见 处理不包含拼音的字符

  • default: 保留原始字符

  • ignore: 忽略该字符

  • replace: 替换为去掉 \u 的 unicode 编码字符串 (’\u90aa’ => ‘90aa’)

  • callable 对象: 回调函数之类的可调用对象。

  • heteronym: 是否启用多音字

  • strict: 只获取声母或只获取韵母相关拼音风格的返回结果 是否严格遵照《汉语拼音方案》来处理声母和韵母, 详见 strict 参数的影响

  • v_to_u (bool): 无声调相关拼音风格下的结果是否使用 ü 代替原来的 v 当为 False 时结果中将使用 v 表示 ü

  • neutral_tone_with_five (bool): 声调使用数字表示的相关拼音风格下的结果是否 使用 5 标识轻声

以上参数中,最常使用的是style,使用方法,见上面的代码。


如果这次分享对你有帮助或者使用过程中有任何问题,请在评论区告诉我吧~

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。