學習記錄1:python中replace和split對字串處理的區別

誰與誰發表於2020-09-24

剛開始學習python

遇到一個題目:

實現一個整數加法計算器(多個數相加):如:content = input("請輸入內容:") 使用者輸入:5+9+6 +12+ 13,然後進行分割再進行計算。

一開始想得比較簡單,試著用輸入1+2+3,2+3+4列印出正確的值就以為OK了,但是到了10以上位數的時候就出問題了。

比如5+6+7+8+9+10

content = input()
res = content.replace("+", "")
print(list(res))
num = [int(b) for b in list(res)]
print(sum(num))

列印輸出

5+6+7+8+9+10
['5', '6', '7', '8', '9', '1', '0']
36

 

經過修改:

content = input()
res = content.split("+")
print(res)
num = [int(b) for b in list(res)]
print(sum(num))

列印輸出:

5+6+7+8+9+10
['5', '6', '7', '8', '9', '10']
45

總結:

split() 是分割函式,得到的結果是一個列表

replace()是替換函式,替換後依舊是str字串。

相關文章