Openccpy
Openccpy 是一个基于 OpenCC 的 Python 中文繁简转换库,旨在为 Python 开发者提供便捷的中文文本转换功能。它支持将繁体中文转换为简体中文,以及将简体中文转换为繁体中文,适用于文本处理、国际化本地化、数据清洗等多种场景。
openccpy 是基于 OpenCC 的 Python 中文繁简转换库,支持繁体与简体之间的双向转换。该库适用于文本处理、国际化本地化及数据清洗场景。本文详细介绍了安装方法、基础 API 调用方式以及文件批量处理的高级用法。通过示例代码展示了如何使用 Opencc 类和 Converter 类进行转换,并解决了编码、性能优化等常见问题,帮助开发者快速将繁简转换功能集成至项目中。

Openccpy 是一个基于 OpenCC 的 Python 中文繁简转换库,旨在为 Python 开发者提供便捷的中文文本转换功能。它支持将繁体中文转换为简体中文,以及将简体中文转换为繁体中文,适用于文本处理、国际化本地化、数据清洗等多种场景。
在终端中运行以下命令安装 openccpy:
pip install openccpy
如果网络较慢,可以使用国内镜像源加速安装:
pip install openccpy -i https://pypi.tuna.tsinghua.edu.cn/simple
openccpy 提供了 Opencc 类作为主要接口,包含两个静态方法用于转换:
to_simple(traditional): 将繁体转换为简体to_traditional(simple): 将简体转换为繁体以下是一个简单的转换测试类示例:
# coding=utf-8
from openccpy.opencc import Opencc
class TestOpencc(object):
"""
核心转换测试类
"""
def test_to_simple(self):
"""
测试转换为简体
"""
assert "丝" == Opencc.to_simple("絲")
assert "一目了然" == Opencc.to_simple("一目瞭然")
print("简体转换测试通过")
def test_to_traditional(self):
"""
测试转化为繁体
"""
assert "絲" == Opencc.to_traditional("丝")
assert "一目瞭然" == Opencc.to_traditional("一目了然")
print("繁体转换测试通过")
if __name__ == "__main__":
tester = TestOpencc()
tester.test_to_simple()
tester.test_to_traditional()
def to_simple(traditional):
"""
繁体转化为简体
1. 如果字符为空,直接返回
2. 字符长度为 1,返回对应简体字符
3. 对应长度大于 1,返回对应简体词组
:param traditional: 繁体单词/单个词组
:return: 对应的简体信息
"""
# 内部实现逻辑由 OpenCC 引擎处理
pass
def to_traditional(simple):
"""
简体转化为繁体
1. 如果字符为空,直接返回
2. 字符长度为 1,返回对应繁体字符
3. 对应长度大于 1,返回对应繁体词组
:param simple: 简体单词/单个词组
:return: 对应的繁体信息
"""
# 内部实现逻辑由 OpenCC 引擎处理
pass
对于更复杂的场景,可以实例化 Converter 对象来指定具体的转换方案(如传统台湾、大陆简体等)。
from openccpy.opencc import Converter
# 创建转换器实例
converter = Converter('t2s') # 繁体到简体
text = "這是一個測試"
result = converter.convert(text)
print(result) # 输出:这是一个测试
在实际应用中,经常需要对整个文件进行繁简转换。以下示例演示如何读取文件并保存转换后的结果。
import codecs
def convert_file(input_path, output_path, mode='t2s'):
"""
批量转换文件内容
:param input_path: 输入文件路径
:param output_path: 输出文件路径
:param mode: 转换模式 ('t2s' 或 's2t')
"""
converter = Converter(mode)
try:
# 使用 utf-8-sig 编码处理可能存在的 BOM
with codecs.open(input_path, 'r', encoding='utf-8') as f_in:
content = f_in.read()
converted_content = converter.convert(content)
with codecs.open(output_path, 'w', encoding='utf-8') as f_out:
f_out.write(converted_content)
print(f"转换完成:{input_path} -> {output_path}")
except FileNotFoundError:
print(f"错误:找不到文件 {input_path}")
except Exception as e:
print(f"发生错误:{e}")
# 使用示例
# convert_file('input.txt', 'output.txt', 't2s')
Converter 实例,而不是每次转换都重新创建。openccpy 为 Python 项目提供了稳定可靠的中文繁简转换能力。通过简单的 API 调用即可实现文本的双向转换,配合文件处理示例,可轻松集成到自动化脚本或 Web 服务中。开发者可根据实际需求选择合适的转换模式,提升文本处理的效率。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online