Python 3.9中如何为长度未知的tuple变量设置类型标注?
动态长度元组的类型标注方案
对于运行时才能确定长度的同类型元素元组,Python 3.9 支持直接用内置tuple类型加省略号的格式做标注:tuple[元素类型, ...]
你当前的场景下,标注写法如下:
some_list: list[int] = [1, 2, 3] # 省略号代表该tuple包含任意数量的int类型元素 result: tuple[int, ...] = tuple(some_list)
补充说明:
- 你平时使用的
tuple[A, B]格式属于固定长度异质元组标注,仅适用于长度、每个位置的类型都提前明确的场景 - 带省略号的标注格式在Python 3.9及以上版本无需从
typing模块导入额外类型,直接使用内置tuple即可,所有主流静态类型检查工具(mypy、pyright等)均可正常识别
内容的提问来源于stack exchange,提问作者Abhijit Sarkar
相关产品推荐
相关产品推荐

