python文字列から数値を抽出して和を求める
951 ワード
文字列から数値を抽出
「i 13 love 14 you 520」から13,14520を抽出し、加算加算方法1:
方法2:
方法3:正規表現を用いてモジュールreをインポートする
「i 13 love 14 you 520」から13,14520を抽出し、加算加算方法1:
s = "i13love14you520"
new_str = "" #
for ch in s:
if ch.isdigit(): # , ch
new_str += ch
else:
new_str += " "
sub_list = new_str.split() #
num_list = list(map(int, sub_list)) #map ,
res =sum(num_list)
print(res)
方法2:
s = "i13love14you520"
new_str = "" #
for ch in s:
if ch.isdigit(): # , ch
new_str += ch
else:
new_str += " "
sub_list = new_str.split()
print(sub_list)
ex_str = "+".join(sub_list) # join()
print(eval(ex_str))
方法3:正規表現を用いてモジュールreをインポートする
import re
re_obj = re.compile(r"\d+") #
res_list = re_obj.findall(s) # findall
num_list = list(map(int, res_list)) #map ,
print(sum(num_list))