python 判断字符串内容为且仅为float(浮点类型)
才学三个月代码的我,找了很久如何判断字符串是一个浮点数的办法,但是还是没找到。所以总结一下!
下面展示一些下我的代码。
def main():
#假设了四种情况
str1 = "1.2" #正确输入了浮点数1.2
str2 = "abc" #输入了错误的字符串
str3 = "1" #输入了一个整形数字
str4 = "" #什么都没有输入
f1 = safe_float(str1)
f2 = safe_float(str2)
f3 = safe_float(str3)
f4 = safe_float(str4)
print(f1)
print(f2)
print(f3)
print(f4)
#以下是自建的函数safe_float
def safe_float(number):
result = "." in number
#首先判断输入进来的字符串里是否含有“.”(小数点),排除整形的可能。
if result:
#如果含有小数点则尝试float,不能float则说明含有非数字字符。
try:
return float(number)
except:
return "NO"
else:
return "NO"
if __name__ == '__main__':
main()
思路很简单嗷,只是因为一直在CSDN上白嫖别人的文章有点内疚,打算也写一点,就算没帮到别人也可以自己以后来看。
希望大神们如果有更好的办法,可以分享一下。