繁体   English   中英

将由 2 个不同数字组成的文本数字转换为数字

[英]Convert text number composed of 2 different numbers to digits

我一直试图找到解决我的问题的方法,但徒劳无功。

我有一个数字数据库,可以分为两种类型的书面数字进行转换:我希望能够检测到我正在处理哪种类型的句子,然后进行转换

1. 普通的,我只是使用text2num()函数进行转换:

例子:

number = "one hundred fourty five"
print(text2num(number, "en"))

我的输出是

>>>145

2. 第二种,由两个不同的数字组成:

我的输入有点像这样:

number = "thirty six seventy two"
number2 = "eighty two fifty"

我正在尝试获得以下信息:


>>>number="3672"
>>>number2="8250"

更清楚一点:如果我的句子如下:

"thirty two eighty"
"five hundred eighty"
"ten zero eight"

我的输出应该是这样的:

"3280"
"580"
"1008"

似乎它的子模块alpha2digit确实支持它,您只需要进一步splitjoin结果即可获得预期的输出:

from text_to_num import alpha2digit

''.join(alpha2digit("thirty six seventy two", lang='en').split())
# '3672'

''.join(alpha2digit("eighty two fifty", lang='en').split())
# '8250'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM