python - 指定函数中的输入类型
问题描述
我想知道是否可以在函数中指定输入类型,或者我是否必须使用其他东西。
想象一下,我定义了一个函数(示例)。我希望我的参数(类型)指示输入将是什么类型
int(input())
如果它不是 int,我会发送一个错误并再次要求输入。
def example(type) :
while True :
try :
var = type(input())
except :
print("error")
else :
break
return var
example(int)
我不知道这是否可能。最终,我想为浮点数和字符串做这件事。我用 if / else 绕过了这个问题。您还有其他解决方案吗?我想尽可能地缩短我的代码。
解决方案
input 每次都返回一个 str 。而 type 已经是 Python 中一个函数的名称(它返回参数的类型)。
因此,如果您必须将字符串转换(转换)为 int 或 float 并用 try / 包围它,恐怕除外。
推荐阅读
- python - Django Rest Framework:路由器不工作
- c# - 开始测试时出错:NUnit.AssemblyHooks:找不到方法:Void Techtalk.Specflow.Tracing:Allure.SpecflowPlugin.AllurePlugin
- sql - 计算具有与相同 ID 相关的不同列值的结果
- c++ - 我正在编写 Arduino,但我对将 2 个传感器和 1 个伺服器与一个按钮结合起来感到困惑
- azure - 如何在 Terraform 中生成两个具有相同值的键?
- vue.js - 如何在使用 vue js cdn(不是 Vue Cli)的简单项目中使用 vue-resource
- android - 在 Okhttp Android Kotlin 中带有参数的 Http GET 请求
- java - springboot RestTemplate 调用 url 和 https 响应头(内容类型:audio/wav),如何保存为 *.wav 文件?
- ios - 有没有办法在没有用户交互的情况下(例如通过硬件密钥)为启用 2FA 的帐户上传带有 fastlane 的屏幕截图?
- java - 为什么 List适用于 Integer 和 Long 类型?