我必须使用 python 来读取一个文件,这个文件包含字符、数字和其他内容的组合。
从文件中读取一行后,如何检查该行是整数还是 float ? (我必须知道这一行是整数和 float 的信息)
.isdigit(), .isdecimal(), .isnumeric()这些字符串方法我都试过了,好像是这些方法仅当字符串中只有十进制数字时才返回 True。
有什么方法可以帮助我完成这个任务吗?
附注:不能使用try 或任何exception 方法。
============== 我文件的内容 =================
0
[Begin Description]
xxx
[End Description]
1.1
[Begin Description]
....
我想知道我正在阅读的当前行是整数 0 还是 float 1.1。这就是我的问题。
请您参考如下方法:
希望对你有帮助
import re
s = "1236.0"
r = re.compile(r'[1-9]')
r2 = re.compile(r'(\.)')
if re.search(r,s) and re.search(r2,s):
print("Float")
if re.search(r,s) and not re.search(r2,s):
print("Integer")
