第一种
str.isdigit()
如果字符串只包含数字则返回 True 否则返回 False。
file = open('text.txt')
content = file.read()
s = [i for i in content if str.isdigit(i)]
print(s)
第二种
正则表达式
\d+
匹配1次或者多次数字,注意这里不要写成*
,因为即便是小数,小数点之前也得有一个数字;\.?
这个是匹配小数点的,可能有,也可能没有;\d*
这个是匹配小数点之后的数字的,所以是0个或者多个;
import re
file = open('text.txt')
for content in file.readlines():
s1=re.findall(r"\d+\.?\d*",content)
for s2 in s1:
print(s2)