typing.Tuple并且
typing.List是
通用类型 ; 这意味着您可以指定其
内容 必须是什么类型:
def f(points: Tuple[float, float]): return map(do_stuff, points)
这指定传入的元组必须包含两个
float值。内置
tuple类型无法做到这一点。
typing.Tuple此处的特殊之处在于,它使您可以指定期望的特定数量的元素以及每个位置的类型。如果未设置长度且应重复该类型,请使用省略号:用s
Tuple[float,...]表示可变长度。
tuple``float
对于
typing.List和其他序列类型,通常只为所有元素指定类型;
List[str]是任意大小的字符串列表。请注意,函数应优先
typing.Sequence作为参数,
typing.List通常仅用于返回类型。一般而言,大多数函数将采用任何序列,并且只会迭代,但是当您返回时
list,您实际上是在返回特定的可变序列类型。
typing即使您当前不限制内容,也应始终选择通用名称。以后使用泛型类型添加该约束比较容易,因为结果更改会更小。



