Python 指定函数中输入的类型

Python 指定函数中输入的类型,python,function,variables,isinstance,Python,Function,Variables,Isinstance,我想知道是否可以在函数中指定输入类型,或者是否必须使用其他东西 假设我定义了一个函数(示例)。我希望我的参数(类型)指示输入的类型 int(input()) 如果不是int,我发送一个错误并再次请求输入 def example(type) : while True : try : var = type(input()) except : print("error") else :

我想知道是否可以在函数中指定输入类型,或者是否必须使用其他东西

假设我定义了一个函数(示例)。我希望我的参数(类型)指示输入的类型

int(input())
如果不是int,我发送一个错误并再次请求输入

def example(type) :
    while True :
        try :
            var = type(input())
        except :
            print("error")
        else :
            break
    return var

example(int)

我不知道这是否可能。最后,我想为浮点数和字符串做这件事。我绕过了if/else的问题。你有其他解决办法吗?我想尽量缩短代码。

每次输入都返回一个str。类型已经是Python中函数的名称(返回参数的类型)


因此,如果必须的话,您必须将字符串转换为int或float,并用try/except环绕它。

input每次都返回str。类型已经是Python中函数的名称(返回参数的类型)


因此,如果必须,您必须将字符串转换(强制转换)为int或float,并用try/except将其包围。

您可以使用来检查输入类型,我想我做错了什么
python def test(type):var=input()返回isinstance(var,type)print(test(int))
当我输入5时,它返回False。嗯,
input
总是返回一个字符串,所以检查它是否是
int
的实例是毫无意义的。你目前的方法看起来很好,有什么问题吗…?对,我忘了,但我设法解决了。我不知道我可以将变量设置为类。你可以用它来检查输入的类型。我猜我做错了什么
python def test(type):var=input()返回isinstance(var,type)print(test(int))
当我输入5时,它返回False。嗯,
input
总是返回一个字符串,所以检查它是否是
int
的实例是毫无意义的。你目前的方法看起来很好,有什么问题吗…?对,我忘了,但我设法解决了。我不知道我可以将变量设置为类。