判断是否是小数的函数

问题:

unindent does not match any outer indentation level  此错误是缩进有问题

 
  
# 1.98
# -2.50
# retrun True
# retrun False
# 1.98
# 1.98.23
# -1.90
# 需求分析:
#1、 小数点个数 .count()
# 2、按照小数点进行分割 1.98 [1,98] s.87 98.s1
#3、正小数:小数点左边是整数 右边也是整数 .isdigits()
# 负小数:小数点左边是以负号开头,但是只有一个负号,右边也是整数 -9.85

def
is_float(s): s = str(s) if s.count('.')==1:#小数点个数 s_list = s.split('.') left = s_list[0] #小数点左边 right = s_list[1] #小数点右边 if left.isdigit() and right.isdigit(): #正小数 return True elif left.startswith('-') and left.count('-')==1 and \ left.split('-')[1].isdigit() and \ right.isdigit(): #判断合法负小数 return True return False res=is_float(1.2) print(res)

解释:定义一个函数,给函数传值(整数、字符串),第一步先转换字符类型,无论传的是什么类型的值,都转成字符串类型(因要后面要对字符串做处理判断),用.分割取出小数点左两边的值;如果左边的值等于正整数,右边的值也等于正整数;返回真(判断合法正小数)

判断合法负小数:开头是负号开头并且只有一个符号,用负号分割,判断左右两边的取值为正整数;为真,其余均为假;

转载于:https://www.cnblogs.com/ruijie/p/10286767.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值