📦 cn2an
是一个快速转化 中文数字
和 阿拉伯数字
的工具包!
- 支持
中文数字
=>阿拉伯数字
; - 支持
大写中文数字
=>阿拉伯数字
; - 支持
中文数字和阿拉伯数字
=>阿拉伯数字
;
- 支持
阿拉伯数字
=>中文数字
; - 支持
阿拉伯数字
=>大写中文数字
; - 支持
阿拉伯数字
=>大写人民币
;
- 支持
中文数字
=>阿拉伯数字
; - 支持
阿拉伯数字
=>中文数字
;
- 支持小数
- 支持负数
⚠️ 注意:
- 仅支持 Python 的 3.6 以上版本;
- 请安装使用 cn2an 的最新版本。
pip install cn2an
git clone https://github.com/Ailln/cn2an.git
cd cn2an
python setup.py install
# 在文件首部引入包
import cn2an
# 查看版本
print(cn2an.__version__)
# 0.4.1
最大支持到
万亿兆
,即10**32
。
import cn2an
# 在 strict 模式下,只有严格符合数字拼写的才可以进行转化
output = cn2an.cn2an("一百二十三", "strict")
# or output = cn2an.cn2an("一二三")
print(output)
# 123
# 在 normal 模式下,还可以将 一二三 进行转化
output = cn2an.cn2an("一二三", "normal")
print(output)
# 123
# 在 smart 模式下,还可以将混合拼写的 1百23 进行转化(暂不支持小数)
output = cn2an.cn2an("1百23", "smart")
print(output)
# 123
# 以上三种模式均支持负数
output = cn2an.cn2an("负一百二十三")
print(output)
# -123
最大支持到
10**32
,即万亿兆
。
import cn2an
# 在 low 模式下,数字转化为小写的中文数字
output = cn2an.an2cn("123", "low")
# or output = cn2an.an2cn("123")
print(output)
# 一百二十三
# 在 up 模式下,数字转化为大写的中文数字
output = cn2an.an2cn("123", "up")
print(output)
# 壹佰贰拾叁
# 在 rmb 模式下,数字转化为人民币专用的描述
output = cn2an.an2cn("123", "rmb")
print(output)
# 壹佰贰拾叁元整
# 以上三种模式均支持负数
output = cn2an.cn2an("-123")
print(output)
# 负一百二十三
import cn2an
output = cn2an.transform("我捡了一百块钱", "cn2an")
# or output = cn2an.transform("我捡了一百块钱")
print(output)
# 我捡了100块钱
output = cn2an.transform("我捡了100块钱", "an2cn")
print(output)
# 我捡了一百块钱
详细用法见 API.
- 理论上支持
Windows
、MacOS
、Ubuntu
下的所有Python 3.6+
的版本。 - 实际上仅在
Windows 10
、MacOS 10.14
、Ubuntu 16.04
的Python 3.6.9
和Python3.7.4
上做过完整测试。 - 欢迎提交其他版本使用情况到 Issues 中,期待你的反馈。
- 如果你有
Python 2
的使用需求,可 Fork 代码自行修改。当然也欢迎提 PR,贡献自己代码给其他人。
- 先搜索 Issues 中有没有人已经问过类似的问题;
- 如果没有找到解答,请新开一个 issue:
- 首先,在「issue 标题」中填写你遇到的问题的简介;
- 然后,在「issue 详情」中填写你遇到的问题的详情;
- 最后,不要忘记注明你使用的操作系统(比如 Windows 10)和 Python 版本(比如 Python 3.6.3)。
- 还可以参考 issue 模版。
本项目是用看板管理开发进度,请点击 v0.4 查看开发进度和计划事项。
本地测试使用 Anaconda 的虚拟环境,测试方法如下。
# 安装 conda 环境
conda create -n py369 python=3.6.9
conda create -n py374 python=3.7.4
# 执行测试
bash local_test.sh
线上测试使用 GitHub Actions。
-
测试版本:
v0.3.10
-
测试设备:
2.3 GHz 双核Intel Core i5 MacBook Pro
-
测试代码:performance.py
-
测试方法:
pip install -r requirements_test.txt python -m cn2an.performance
-
测试结果:
序号 功能 执行次数 执行时间(平均) 性能(次/秒) 1 an2cn 10000 0.23 43k 2 cn2an 10000 0.56 18k
在测试时,我使用的测试数据是长度最大的数据!因此,大多数情况下性能要比上述情况更好~
欢迎添加微信号:kinggreenhall
,备注「cn2an」,我邀请你进入交流群。
- Thunder Bouble: 提出很多有效的反馈,包括一些 bug 和新功能。