把数字(int,float)转换成波斯语单词的工具

num2fawords的Python项目详细描述


https://travis-ci.org/5j9/num2fawords.svg?branch=masterhttps://codecov.io/github/5j9/num2fawords/coverage.svg?branch=masterhttps://ci.appveyor.com/api/projects/status/github/5j9/num2fawords?svg=true&branch=master

num2fawords

num2fawords是一个高度可定制的库,它提供将数字(int、float、decimal、fraction或str)转换成波斯语单词形式的函数。

安装

  • python 3.3+是必需的
  • pip install 'setuptools>=36.2.1'
  • pip install num2fawords

用法

>>>fromnum2fawordsimportwords,ordinal_words>>>words(1984)'یک هزار و نهصد و هشتاد و چهار'>>>ordinal_words(1232)'یک هزار و دویست و سی و دوم'>>>ordinal_words(123)'یکصد و بیست و سوم'>>>words(1.1e-9)'یک و یک دهم در ده به توان منفی نه'

很明显,单词用于转换成单词形式,序数单词用于序数单词from。

单词也接受其他常见的标准类型:

>>>words(19.75)'نوزده و هفتاد و پنج صدم'>>>fromdecimalimportDecimal>>>words(Decimal('1.1'))'یک و یک دهم'>>>fromfractionsimportFraction>>>words(Fraction(-2,5))'منفی دو پنجم'

默认的小数分隔符是“_”,但可以更改为“__”(或任何其他字符串),如下所示:

>>>words(19.75,decimal_separator=' ممیز ')'نوزده ممیز هفتاد و پنج صدم'

例如,有些人更喜欢“的”而不是其他形式的“的”。该库默认使用第二种形式,也用于伊朗官方纸币。但可以更改:

>>>fromnum2fawordsimportHUNDREDS>>>words(170)'یکصد و هفتاد'>>>HUNDREDS[1]='صد'>>>words(170)'صد و هفتاد'

关于单词的其他参数的一些示例:

>>>words(7,positive='مثبت ')'مثبت هفت'>>>words(-2,negative='منهای ')'منهای دو'>>>words('۱/۲')'یک دوم'>>>words('1/2',fraction_separator=' تقسیم بر ',ordinal_denominator=False)'یک تقسیم بر دو'>>>words(1.1e-9)'یک و یک دهم در ده به توان منفی نه'>>>words(1.1e-9,scientific_separator=' ضربدر ده به قوهٔ ')'یک و یک دهم ضربدر ده به قوهٔ منفی نه'

当然,上面的论点可以一起使用。

如果希望一次性更改默认参数值,请使用更改默认值函数:

>>>fromnum2fawordsimportchange_defaults,words>>>change_defaults(fraction_separator=' بخش بر ',ordinal_denominator=False)>>>words('۱/۴')'یک بخش بر چهار'

就这些。享受吧!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java CXF和授权   java在网站中部署使用swing创建的表单   java为什么getHeaderField()返回一个字符串,其中getHeaderFields()返回HttpUrlConnection中的Map<String,List<String>>   java如何检测恶意数据包?   webview中的java网页为空   java SWT图像资源,用于将我的所有图像存储在一个位置   java计算数组的最大长度,使平均值小于给定值   java“发件人电话号码无效”和美国号码   将Swing组件作为内容的自定义Java工具提示不会显示   在并发HashMap中重新灰化期间的java检索   Java 7和Tomcat 7.0.64 ClassFormatException:常量池中的字节标记无效   使用JUnit的java assertNull因NullPointerException失败   java内存中的文件是否与文件系统中的文件大小相同?   循环内实例化的类型的java注入依赖项