51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Python 简单进行简繁转换

最近项目中用到了简单的简繁转换,如果用OpenCC太重了,于是搜到了 zhconv 这个库。

zhconv 提供基于 MediaWiki 词汇表的最大正向匹配简繁转换,Python 2, 3 通用。

支持以下地区词转换:

  • zh-tw 台灣正體

  • zh-hk 香港繁體

  • zh-sg 马新简体

  • zh-hans 简体

  • zh-hant 繁體

正好适合我不求转换质量的轻量需求,所以介绍给更多需要的人。

而且虽然该项目stars很少,但中途发现作者还参与过维护jieba分词。

调用也非常简单

|-----------------|----------------------------------------------------------------------------------------------------------------------------------| | 1 2 3 4 | hljs python >>> from zhconv import convert >>> convert('Python是一种动态的、面向对象的脚本语言', 'zh-hant') 'Python是一種動態的、面向對象的腳本語言' 复制代码 |

支持对地区化词语的转换

|-----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------| | 1 2 3 4 5 6 7 | hljs python >>> convert('计算机软件', 'zh-tw') '計算機軟體' >>> convert('計算機軟體', 'zh-hans') # zh-hans只是逐字转换 '计算机软体' >>> convert('計算機軟體', 'zh-cn') '计算机软件' 复制代码 |

支持 MediaWiki 人工转换语法

|---------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 1 2 3 4 5 6 7 8 9 | hljs python >>> from zhconv import convert\_for\_mw >>> s = '張國榮曾在英國-{zh:利兹;zh-hans:利兹;zh-hk:列斯;zh-tw:里茲}-大学學習。' >>> convert\_for\_mw(s, 'zh-hans') '张国荣曾在英国利兹大学学习。' >>> convert\_for\_mw(s, 'zh-hk') '張國榮曾在英國列斯大學學習。' >>> convert\_for\_mw(s, 'zh-tw') '張國榮曾在英國里茲大學學習。' 复制代码 |

当然对于复杂高精度的转换需求,还是建议用专业的OpenCC 开源库:

https://github.com/BYVoid/OpenCC

赞(0)
未经允许不得转载:工具盒子 » Python 简单进行简繁转换