Python 如何检查变量的数据类型?

Python 如何检查变量的数据类型?,python,python-3.x,input,Python,Python 3.x,Input,我想检查输入的类型,检查数据是float还是int # type of inData will be String inData = input("Enter Data") if inData.isdigit(): print("Integer") 这将检查inData是否为整数,但不会检查浮点类型 有什么建议吗?您可以使用内置项查看对象的类型 例如,如果inData是浮点,则typeinData is float将返回True。据我所知,您需要检查inData是否可以转换为浮点。

我想检查输入的类型,检查数据是float还是int

# type of inData will be String
inData = input("Enter Data")

if inData.isdigit():
    print("Integer")
这将检查inData是否为整数,但不会检查浮点类型

有什么建议吗?

您可以使用内置项查看对象的类型


例如,如果inData是浮点,则typeinData is float将返回True。

据我所知,您需要检查inData是否可以转换为浮点。 您可以这样做:

def isFloat(x):
    try:
        float(x) #tries to convert x to float. raises an exception if unsuccessful
    except ValueError:
        return False # return false if exception was raised
    return True

if isFloat(inData):
    print("Float")

为了理解异常,请看一下

这是python 3还是python 2?//这不是您在pythoninData中的注释方式。pythoninData的类型为str。Python3的可能副本-输入法…由于输入法的原因,inData已经是字符串。如果您使用typeinData方法,那么它将返回您想要使用的stringisinstanceindata,float用于您试图完成的任务,这仍然是错误的,因为inData是一个字符串。如果X是Y的一个子类型的实例,那么typeX是Y将给你一个假阴性。比较typeTrue是int和isinstanceTrue,int。让我用另一种方式说。有没有类似于isdigit方法的方法?香卡尔:没有,没有。请不要发布重复问题的答案。将它们标记为重复,除非有人已经投票决定作为重复关闭。