python - 指定函数中的输入类型

标签 python function variables isinstance

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

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

int(input())

如果它不是 int,我会发送一个错误并再次要求输入。

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

example(int)

不知道可不可以。最终,我想为 float 和字符串做这件事。我用 if/else 绕过了这个问题。您还有其他解决方案吗?我想尽可能缩短我的代码。

最佳答案

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

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

关于python - 指定函数中的输入类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58100958/

相关文章:

python - 我们如何在 Flask 中使用参数从另一条路由调用一条路由?

c - 函数的原型(prototype)类似于在调用例程中声明函数?

Python scikit 学习的 TfidfVectorizer - 最大值为 1.0?

python - 热重载 gevent WSGIServer

c - 根据平台对不同数量的函数参数使用#ifdef

java - 无法从 Activity 类访问 GLSurfaceview 类中声明的变量(没有静态)

c - [GTK]将 g_signal_connect 中的循环计数器传递给 g_callback

iphone - 通过导航 Controller 传递值

python可以从远程服务器加载模块吗?

c# - SQLiteFunction简单不工作