Python 函数可以通过参数类型来指定函数接受的参数类型,从而保证函数参数的类型正确性,提高程序的健壮性。以下是指定 Python 函数参数类型的完整攻略:
1. 使用 type hints 指定函数参数类型
Python 3.5 之后引入了 type hints,通过在函数参数和返回值前加上类型提示,可以指定参数类型和返回值类型。例如:
def add(a: int, b: int) -> int:
return a + b
在上面的函数中,a 和 b 的类型指定为 int,返回值类型指定为 int。这样在调用这个函数的时候,传入除 int 类型以外的参数类型会报错:
add(1, 2) # 正确
add('1', '2') # 报错:TypeError: unsupported operand type(s) for +: 'int' and 'str'
2. 使用 assert 语句验证参数类型
除了使用 type hints,还可以使用 assert 语句在函数内部验证参数类型。例如:
def add(a, b):
assert isinstance(a, int), "a必须是int类型"
assert isinstance(b, int), "b必须是int类型"
return a + b
这个函数在调用的时候,如果传入的参数类型不是 int 类型,会触发 assert 异常,抛出异常信息。
add(1, 2) # 正确
add('1', '2') # 报错:AssertionError: a必须是int类型
除了上述两种方法以外,还可以使用第三方库如 typing 来指定函数参数类型。总之,无论采用什么方式,指定函数参数类型都是提高程序健壮性、减少错误的一个重要手段。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 函数如何指定参数类型? - Python技术站