基于Unicode CLDR数据的规则化数字格式化
项目描述
Unicode RBNF
使用Unicode通用区域数据存储库(CLDR)的纯Python实现规则化数字格式化(RBNF)。
这使得您可以为大量区域拼写数字。
from unicode_rbnf import RbnfEngine
engine = RbnfEngine.for_language("en")
assert engine.format_number(1234) == "one thousand two hundred thirty-four"
根据区域,也支持不同的规则集。
from unicode_rbnf import RbnfEngine, RulesetName
engine = RbnfEngine.for_language("en")
assert engine.format_number(1999, RulesetName.YEAR) == "nineteen ninety-nine"
assert engine.format_number(11, RulesetName.ORDINAL) == "eleventh"
支持的区域
见:https://github.com/unicode-org/cldr/tree/release-44/common/rbnf
引擎实现
并非RBNF引擎的所有功能都已实现。以下功能可用
- 文字文本(
hundred
) - 商数替换(
<<
或←←
) - 余数替换(
>>
或→→
) - 可选替换(
[...]
) - 规则替换(
←%ruleset_name←
) - 规则替换(
=%ruleset_name=
) - 特殊规则
- 负数(
-x
) - 不正确的小数(
x.x
) - 非数字(
NaN
) - 无穷大(
Inf
)
- 负数(
一些最终需要添加的功能
- 正确分数规则(
0.x
) - 前面的提醒替换(
>>>
或→→→
) - 数字格式字符串(
==
)
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
unicode_rbnf-1.3.0.tar.gz (83.4 kB 查看散列)
构建分发
unicode_rbnf-1.3.0-py3-none-any.whl (137.1 kB 查看散列)
关闭
unicode_rbnf-1.3.0.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | b37e246cec31fb8fda63737e7359063594835000ecf960a0ae098d45f8b2109a |
|
MD5 | fda8641ee8ca880b192ef9a91d942da8 |
|
BLAKE2b-256 | bc5f4113917ea5710d93681ad68f9499b5b4f75d45ae0fbf45e6e4459bb4b843 |
关闭
unicode_rbnf-1.3.0-py3-none-any.whl 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 7378e9f1ec248ae29b811a9c95f85f5ea86a58f2fc4b2ecaab92aa16f806dba3 |
|
MD5 | aaab764520bb6dcae937c0e8e31e7dad |
|
BLAKE2b-256 | 3ac658cc1ae186eaa352da9dc4080c3085cd05efbd9ad450e6a41eb2db1ff655 |