自 python 3.6(或 3.4?我不记得了)以来,我们可以注释一个函数。例如:
def getVersion() -> str:
现在当一个函数返回一个元组时会发生什么?我们可以这样做:
def func() -> tuple:
但是如果我们知道元组是两个整数的元组呢?我在这里阅读:How to annotate types of multiple return values?我们可以做到这一点:
def func() -> Tuple[int, int]
但是需要引入typing
模块。
我也试过:
def func() -> (int, int):
而且它不会崩溃。
什么是正确的方法?
最佳答案
注解可以用于任何你喜欢的地方:它们是任意的 Python 表达式(不过,关于在未来的 Python 版本中打破这一点的讨论正在进行中)。
这就是为什么 (int, int)
用作注释。 (1 + 3)
也可以用作注释。
一些注释被 mypy
和其他 python 类型检查器理解为 type 注释:Tuple[Int, Int]
就是这样一个注释.
简而言之:使用 Tuple[int, int]
。
关于Python 注释 : difference between Tuple and (),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47163048/