您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關python找出所有數字的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
python中獲取字符串中所有數字的方法:
1、使用正則表達式獲取
# -*- coding: cp936 -*- import re string="A1.45,b5,6.45,8.82" print re.findall(r"\d+\.?\d*",string) # ['1.45', '5', '6.45', '8.82']
代碼編寫思路:
既然是提取數字,那么數字的形式一般是:整數,小數,整數加小數;所以一般是形如:—-.—–;
根據上述正則表達式的含義,可寫出如下的表達式:”\d+.?\d*”;
\d+ 匹配1次或者多次數字,注意這里不要寫成*,因為即便是小數,小數點之前也得有一個數字;
\.? 這個是匹配小數點的,可能有,也可能沒有;
\d* 這個是匹配小數點之后的數字的,所以是0個或者多個;
2、通過循環遍歷字符串來獲取字符串中所有數字
s = "dede323frf54de23" l = len(s) numbers = [] i = 0 while i < l: num = '' symbol = s[i] while '0' <= symbol <= '9': # symbol.isdigit() num += symbol i += 1 if i < l: symbol = s[i] else: break i += 1 if num != '': numbers.append(int(num)) print(numbers)
輸出結果如下:
[323, 54, 23]
關于python找出所有數字的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。