鱼C论坛

 找回密码
 立即注册
查看: 1483|回复: 11

大佬们,关于汉字转拼音的程序,请给个思路。

[复制链接]
发表于 2022-4-20 16:26:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我想做一个汉字转拼音的程序,但是我是个初学者,有好多问题,而且没有思路,请大佬们指导一下。

1.我想创建一个字典或者哈希表,用来对应汉字和拼音,是否有现成的这种库或者文档?
2.多音字问题是否需要一个词库来解决?
3.输出的时候按照声母、韵母和音调的顺序,音调用符号而不是1234表示。

我现在脑子很混乱,也不知道问题有没有说清楚,请大佬们指导和提供方案。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-4-20 16:28:41 | 显示全部楼层
有个库叫 pypinyin,不需要自己重复造轮子

>>> import pypinyin
>>> pypinyin.pinyin('你好呀')
[['nǐ'], ['hǎo'], ['ya']]
>>>

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-20 16:30:24 | 显示全部楼层
isdkz 发表于 2022-4-20 16:28
有个库叫 pypinyin,不需要自己重复造轮子

我知道这个,但是这事PY用的呀,我不知道在C#上怎么用~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-20 16:31:26 | 显示全部楼层
ilsoviet1917 发表于 2022-4-20 16:30
我知道这个,但是这事PY用的呀,我不知道在C#上怎么用~

好吧,是我眼瞎,没看到板块
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-20 16:54:56 | 显示全部楼层
isdkz 发表于 2022-4-20 16:31
好吧,是我眼瞎,没看到板块

pypinyin好像是基于词库的吧?我看源代码里好像没有单个字的字库,另外我也没看懂这个程序是怎么实现输出拼音+数字音调的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-20 16:56:43 | 显示全部楼层
本帖最后由 isdkz 于 2022-4-20 16:59 编辑
ilsoviet1917 发表于 2022-4-20 16:54
pypinyin好像是基于词库的吧?我看源代码里好像没有单个字的字库,另外我也没看懂这个程序是怎么实现输出 ...


这个就是他的字库:
>>> import pypinyin
>>> type(pypinyin.pinyin_dict.pinyin_dict)
<class 'dict'>
>>> len(pypinyin.pinyin_dict.pinyin_dict)
41497
>>> pypinyin.pinyin_dict.pinyin_dict[ord('好')]
'hǎo,hào'
>>>

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-20 17:13:40 From FishC Mobile | 显示全部楼层
isdkz 发表于 2022-4-20 16:56
这个就是他的字库:

这个字库是不是能提出来啊,供其他语言使用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-20 17:18:16 | 显示全部楼层
wp231957 发表于 2022-4-20 17:13
这个字库是不是能提出来啊,供其他语言使用

这我就不知道了,他就是 unicode 编码跟拼音的映射关系组成的字典,

其它语言把 字符 转成 unicode 编码什么的应该没有 python 这么方便吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-20 17:39:12 | 显示全部楼层
wp231957 发表于 2022-4-20 17:13
这个字库是不是能提出来啊,供其他语言使用

可以提出来,有几个.txt文件,是现成的词库。但是没有单独的字库。上面几个问题还是想不明白。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-20 22:00:17 | 显示全部楼层
ilsoviet1917 发表于 2022-4-20 16:30
我知道这个,但是这事PY用的呀,我不知道在C#上怎么用~


写个py文件,用来转换,然后把它打包成exe,这样可行不
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-22 09:34:56 | 显示全部楼层
洛与春风 发表于 2022-4-20 22:00
写个py文件,用来转换,然后把它打包成exe,这样可行不

你的意思是干脆就用PY做,不用C#?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-7 15:09:58 | 显示全部楼层
这个不难吧,关键整个库出来就行了,比如说https://dict.baidu.com/,按unicode 从一开始,一直往下去查询,把里面的拼音拿出来,有空可以分类全拿出来,这样库不就有了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 17:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表