Преобразовать текстовый номер, состоящий из 2 разных чисел, в цифры - PullRequest
1 голос
/ 18 марта 2020

Я пытался найти решение своей проблемы, но тщетно.

У меня есть база данных чисел, которую можно разделить на два типа записанных чисел для преобразования: я хочу иметь возможность определить , какой тип предложения я имею с ним, а затем выполнить преобразование .

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"

1 Ответ

2 голосов
/ 18 марта 2020

Похоже, его подмодуль alpha2digit поддерживает его, вам просто нужно дополнительно split и join результат, чтобы получить ожидаемый результат:

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'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...