如從"i13love14you520"中提取出來 13,14,520,然後相加求和
方法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))
從字串中提取數字
下面程式將字串中的連續數字提取出來,並存放到一維陣列中。比如說乙個字串 a284twx234 je3432 把 284 234 3432 這3個連續數字提取出來,分別存放到a 0 a 1 a 2 中。include include include int main buf i 0 sscanf bu...
python從字串中提取數字 filter
my str 123and456 number filter str isdigit,my str number 123456使用正規表示式 import re re.findall r d hello 42 i m a 32 string 30 42 32 30 這也將匹配42 bla42bla。...
python從字串中提取數字 filter
my str 123and456 number filter str.isdigit,my str number 123456 使用正規表示式 import re re.findall r d hello 42 i m a 32 string 30 42 32 30 這也將匹配42bla42bla。...