我想将文档中的所有数字更改为单词。按照两个函数检测字符串中的数字,并通过num2word库将其转换为单词。
import num2words
from re import sub
def _conv_num(match):
word=num2words(match)
return word
def change_to_word(text):
normalized_text = sub(r'[^\s]*\d+[^\s]*', lambda m: _conv_num(m.group()), text)
return normalized_text
当我按照以下代码使用这两个功能时
txt="there are 3 books"
change_to_word(txt)
python发出此错误
TypeError: 'module' object is not callable
我试图找到一些类似的帖子,但似乎没有身体有相同的问题,或者我没有以适当的方式搜索,所以请帮助我解决方案或链接 问候
答案 0 :(得分:0)
我会这样做:
import re
def _conv_num(match):
return num2words(match.group())
def numbers_to_words(text):
return re.sub(r'\b\d+\b', _conv_num, text)
re.sub()
而不只是sub
\b
)