学习:python str.isdigit() 有浮点数的判断

str.isdigit() 是个很好的工具,用来判断字符串中是否全为数字。而浮点数因为有 "." ,所以会返还FALSE。

参考示例:

# 提示用户输入圆的半径,计算出该圆的周长和面积。要求如下:
# 圆周率 π 值取 3.1415926
# 如果输入的是负数和零,提示半径不能负数或者零
# 计算机的结果保留两位小数
if __name__ == "__main__":
    PI = 3.1415926
    radius = input("请输入圆的半径:")
    print(radius)
    print(radius.isdigit())
    if radius.isdigit():
        radius = float(radius)
        # 计算元的周长和面积
        circle_perimeter = 2 * PI * radius
        circle_area = PI * radius * radius
        print("圆的周长:%.2f \n圆的面积:%.2f" % (circle_perimeter, circle_area))

    else:
        print("半径不能负数或者零")

以上在输入半径:12.3 就会报错 。

此时需要replace() 方法语法:

str.replace(old, new[, max])

参数

  • old -- 将被替换的子字符串。
  • new -- 新字符串,用于替换old子字符串。
  • max -- 可选字符串, 替换不超过 max 次
if radius.replace(".", "").isdigit():   # 替换为空即可。

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值