Python 函数注解
·
例子:def function_name(variate1: int, variate2: int) -> float:
用到了 函数注解(Function Annotations),它有两个部分:
1. 参数后面的 : 类型
variate1: int
variate2: int
这是类型提示(type hint),表示期望 variate1 和 variate2 的类型是 int(整数)。
它不影响代码的运行(Python 是动态类型语言),只是给阅读代码的人和类型检查工具(如 mypy, pyright, IDE)参考。
def foo(x: int):
print(x)
foo(3) # 合法
foo(“abc”) # 运行也不会报错,但类型检查工具会提醒
2. 括号后的 -> 类型
-> float
这是返回值类型提示,表示函数期望返回一个 float(浮点数)。
同样不强制检查,只是提示和文档作用。
def add(a: int, b: int) -> float:
return a + b # 实际返回 int 也不会报错,但类型检查会提示不符
3. 实际用法举例
def compute_alpha(epoch: int, visits: int) -> float:
return 1.0 / (epoch + visits)
类型检查工具会认为这个是错的,因为返回 str
def wrong(epoch: int, visits: int) -> float:
return “not a float”
总结
: 表示参数类型提示
-> 表示返回值类型提示
都是可选,运行时 Python 不会强制检查,主要是方便代码可读性和用工具提前发现类型错误
更多推荐

所有评论(0)