您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用列表/元组/等 从键入vs直接将类型称为列表/元组/等

使用列表/元组/等 从键入vs直接将类型称为列表/元组/等

typing.Tuple并且typing.List通用类型 ; 这意味着您可以指定其内容 必须是什么类型:

def f(points: Tuple[float, float]):
    return map(do_stuff, points)

这指定传入的元组必须包含两个float值。内置tuple类型无法做到这一点。

typing.Tuple此处的特殊之处在于,它使您可以指定期望的特定数量的元素以及每个位置的类型。如果未设置长度且应重复该类型,请使用省略号:用sTuple[float, ...]表示可变长度。tuple``float

对于typing.List和其他序列类型,通常只为所有元素指定类型;List[str]是任意大小的字符串列表。请注意,函数应优先typing.Sequence作为参数,typing.List通常仅用于返回类型。一般而言,大多数函数将采用任何序列,并且只会迭代,但是当您返回时list,您实际上是在返回特定的可变序列类型。

typing即使您当前不限制内容,也应始终选择通用名称。以后使用泛型类型添加该约束比较容易,因为结果更改会更小。

其他 2022/1/1 18:35:21 有493人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶