Python 计算字符串中所有数字的和,如:‘12abc34de5f’ => 12 + 34 + 5 => 51
解题思路:
可以把不是数字的元素转换成’ '空格,
然后按空格切割成列表,
把列表中的数字元素找出相加
最后返回
s = '12abc34de5f'
def sum_of_num(s):
num = 0
for i in s:
# 如果'i'元素不是数字
if not i.isdigit():
# 把'i'元素转换成空格
s = s.replace(i, ' ')
# 按' '空格切割字符串得到一个列表
lt = s.split(' ')
for j in lt:
# 判断'j'元素是否是数字
if j.isdigit():
# 是数字用int转换一下加进num
num += int(j)
return num
print(sum_of_num(s))