我正在开发一个小型的nlp项目,它基本上采用自然语言并使用它。我正在处理的方面是采取一个相当基本的句子,“我有32个苹果,8个橙子和10个香蕉。”我想用它来做的是搜索字符串中的整数,将它们转换为数组,然后求它。这是我现在拥有的:
import re
import numpy as np
myString = 'i have 32 apples, 8 oranges, and 10 bananas.'
def evaluation (foo):
numsineval = re.findall(r'\d+', foo)
myarray = np.asarray(numsineval)
yay = np.cumsum(myarray)
print(yay)
evaluation(myString)
我一直在撞墙挡住了几天,真的很想得到一些帮助。谢谢!我找到了其他人编写的NLP计算器,但我无法破解他们的代码以使其有用。如果有人可以帮助我,我会非常感激。
答案 0 :(得分:0)
由Banana提供,此代码有效:
myString = 'i have 32 apples, 8 oranges, and 10 bananas.'
def evaluation (foo):
numsineval = list(map(int, re.findall(r'\d+', foo)))
myarray = np.asarray(numsineval)
yay = sum(myarray)
print(yay)
evaluation(myString)
谢谢!
答案 1 :(得分:0)
没有numpy
:
>>> import re
>>> s = 'i have 32 apples, 8 oranges, and 10 bananas.'
>>> re.findall(r'\d+', s)
['32', '8', '10']
>>> sum(map(int, re.findall(r'\d+', s)))
50