[英]Enforce parameter casing for functions and classes python
如果参数类型与参数类型不匹配,我希望 python 引发异常。 函数示例:
def add_integers (a: int, b:int) -> int:
return a + b
该函数将使用不同的参数返回什么
add_integers(1,2) = 3
add_integers(True,2) = 3
add_integers("1",2) = Exception (because it cannot add str and int)
我想确保该函数除了布尔类型的参数和仅整数之外没有。 我知道我可以创建一个 if 语句来检查类型并自己引发异常,或者使用装饰器函数,但我想知道是否有更简单的方法?
您可以使用内置函数type 。 这将返回对象的类并且不考虑子类。 这是isinstance
的一个问题,因为如果您检查boolean
是否为int
,它也会返回 true
>>> type(1) is int
True
>>> type(True) is int
False
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.