Как распознавать числа с плавающей точкой в тексте?
столкнулся с проблемой. Я делаю голосового ассистента и мне нужно распозновать числа с плавающей точкой в команде.
Текст у меня сохраняется в списке.
Например пользователь сказал: "Пять целых шесть десятых". В коде сохраниться список:
["пять", "целых", "шесть", "десятых"].
И вот это мне нужно перевести в вид: 5.6.
Как это сделать я не понимаю. Помогите пожалуйста.
Ответы (1 шт):
Автор решения: Max Watson
→ Ссылка
Можете попробовать использовать библиотек text2num. Думаю там это предусмотрели. https://github.com/seriyps/ru_number_to_text
from text_to_num import text2num
def floatWrodrs(string):
# Объеденям слова из списк
s = ' '.join(string)
# Передаем строку в библиотеку text2num
num = text2num(s, "ru")
# Получаем ответ
print (num)
floatWrodrs(["пять", "целых", "шесть", "десятых"])