You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中使用if else判断输入值是否为float数据类型

问题原因

Python 的 input() 函数所有返回值默认都是字符串(str)类型,哪怕你输入的是12.1这类看起来是浮点数的内容,拿到的初始值也是"12.1"字符串,所以直接用type(c) == float判断永远为False,自然只会走else分支。


解决方法

你可以通过尝试类型转换+异常捕获的逻辑判断输入内容是否符合浮点数格式,符合要求就输出对应结果,示例代码如下:

c = input("Enter the value\n")
try:
    # 尝试将输入内容转为float类型,转换不报错则说明是合法浮点数格式
    float(c)
    print("it is float")
except ValueError:
    # 转换抛出异常说明不是浮点数格式
    print("it is not float")

如果后续需要使用转换后的浮点数,可以在try块中把转换结果赋值给变量保存:

c = input("Enter the value\n")
try:
    c_float = float(c)
    print("it is float")
    # 后续可以直接使用c_float变量做数值计算
except ValueError:
    print("it is not float")

内容的提问来源于stack exchange,提问作者user16639239

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 21:15:03