【自然语言处理】opencc:中文繁体☞中文简体的转换

在看蚂蚁金服人工智能团队写的一篇关于中文的NLP的论文时,才知道有opencc这么个库,可以将中文繁体转为中文简体,大大简化了处理过程。
如果用的pycharm直接点开解释器,搜opencc,然后install openCC即可。也可以在Terminal通过pip install opencc-python -i https: //pypi.doubanio.com/simple
举个栗子:

import opencc

cc = opencc.OpenCC()
print(cc.convert("「開放中文轉換」,是一個致力於中文簡繁轉換的項目,提供高質量詞庫和函數庫"))
「开放中文转换」,是一个致力于中文简繁转换的项目,提供高质量词库和函数库

可以看下转换效果非常好~
当然,openCC是一个类类型,其构造函数还有个参数为configconfig可取的值有四种,官方文档如下:

t2s - Traditional Chinese to Simplified Chinese
s2t - Simplified Chinese to Traditional Chinese
mix2t - Mixed to Traditional Chinese
mix2s - Mixed to Simplified Chinese

默认情况为t2s,即繁☞简,s2t简☞繁,mix2t与繁体中文混合,mix2s与简体中文混合。

import opencc

cc = opencc.OpenCC('s2t')
print(cc.convert("「开放中文转换」,是一个致力于中文简繁转换的项目,提供高质量词库和函数库"))
「開放中文轉換」,是一個致力於中文簡繁轉換的項目,提供高質量詞庫和函數庫

文本转换的栗子:
原文本:
【自然语言处理】opencc:中文繁体☞中文简体的转换_第1张图片

import opencc

cc = opencc.OpenCC()
with open("train.txt", encoding='utf-8') as f:
    stringArr = [line.strip().split('\n') for line in f.readlines()]

with open("convert.txt", mode='w', encoding='utf-8') as f:
    for s in stringArr:
        f.write(cc.convert(s[0]+'\n'))

转换后的文本:
【自然语言处理】opencc:中文繁体☞中文简体的转换_第2张图片

你可能感兴趣的:(NLP自然语言处理,nlp,opencc,简体转繁体,自然语言处理)