ilsoviet1917 发表于 2022-4-20 16:26:51

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

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

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

我现在脑子很混乱,也不知道问题有没有说清楚,请大佬们指导和提供方案。

isdkz 发表于 2022-4-20 16:28:41

有个库叫 pypinyin,不需要自己重复造轮子

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

ilsoviet1917 发表于 2022-4-20 16:30:24

isdkz 发表于 2022-4-20 16:28
有个库叫 pypinyin,不需要自己重复造轮子

我知道这个,但是这事PY用的呀,我不知道在C#上怎么用~

isdkz 发表于 2022-4-20 16:31:26

ilsoviet1917 发表于 2022-4-20 16:30
我知道这个,但是这事PY用的呀,我不知道在C#上怎么用~

好吧,是我眼瞎,没看到板块{:5_96:}

ilsoviet1917 发表于 2022-4-20 16:54:56

isdkz 发表于 2022-4-20 16:31
好吧,是我眼瞎,没看到板块

pypinyin好像是基于词库的吧?我看源代码里好像没有单个字的字库,另外我也没看懂这个程序是怎么实现输出拼音+数字音调的。

isdkz 发表于 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
'hǎo,hào'
>>>

wp231957 发表于 2022-4-20 17:13:40

isdkz 发表于 2022-4-20 16:56
这个就是他的字库:

这个字库是不是能提出来啊,供其他语言使用

isdkz 发表于 2022-4-20 17:18:16

wp231957 发表于 2022-4-20 17:13
这个字库是不是能提出来啊,供其他语言使用

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

其它语言把 字符 转成 unicode 编码什么的应该没有 python 这么方便吧

ilsoviet1917 发表于 2022-4-20 17:39:12

wp231957 发表于 2022-4-20 17:13
这个字库是不是能提出来啊,供其他语言使用

可以提出来,有几个.txt文件,是现成的词库。但是没有单独的字库。上面几个问题还是想不明白。

洛与春风 发表于 2022-4-20 22:00:17

ilsoviet1917 发表于 2022-4-20 16:30
我知道这个,但是这事PY用的呀,我不知道在C#上怎么用~


写个py文件,用来转换,然后把它打包成exe,这样可行不

ilsoviet1917 发表于 2022-4-22 09:34:56

洛与春风 发表于 2022-4-20 22:00
写个py文件,用来转换,然后把它打包成exe,这样可行不

你的意思是干脆就用PY做,不用C#?

basilizak 发表于 2022-9-7 15:09:58

这个不难吧,关键整个库出来就行了,比如说https://dict.baidu.com/,按unicode 从一开始,一直往下去查询,把里面的拼音拿出来,有空可以分类全拿出来,这样库不就有了。
页: [1]
查看完整版本: 大佬们,关于汉字转拼音的程序,请给个思路。