'西瓜有5个,杏有20个,梨有4个,香蕉有3个,猕猴桃有6个,桃子有21个,火龙果有7个'
怎么将其中的数字提取并求和。求大佬指点
#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import re
s = '西瓜有5个,杏有20个,梨有4个,香蕉有3个,猕猴桃有6个,桃子有21个,火龙果有7个'
sum = 0
res = re.findall("\d+", s)
for i in res:
sum += int(i)
print(res)
print("sum=", sum)
time_ = '西瓜有5个,杏有20个,梨有4个,香蕉有3个,猕猴桃有6个,桃子有21个,火龙果有7个'
time_filter = filter(str.isdigit, time_)
time_list = list(time_filter) # ['2', '0', '1', '9', '0', '9', '0', '4', '1', '1', '0', '0']
s=0
for i in time_list:
s+=int(i)
print(i,end=" ")
print()
print(s)
import re
s = '西瓜有5个,杏有20个,梨有4个,香蕉有3个,猕猴桃有6个,桃子有21个,火龙果有7个'
result = re.findall(r"\d+",s)
total = sum([int(i) for i in result])
print(total)
result = 0
i = 0
while i < len(s):
tmp_num = 0
while i < len(s) and s[i] >= '0' and s[i] <= '9':
tmp_num = tmp_num*10 + int(s[i])
i += 1
i+= 1
result += tmp_num
print(result)