1. 程式人生 > >Python 計算字串中所有數字的和,如:'12abc34de5f' => 12 + 34 + 5 => 51

Python 計算字串中所有數字的和,如:'12abc34de5f' => 12 + 34 + 5 => 51

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))