ContainerType[str, ...] 在 Python 中是什么意思?

问题描述 投票:0回答:1

我意识到Python实际上并没有重载函数,而是, 提示方法输入/输出参数的多种可接受的类型。 就其本身而言,这不允许指定哪些输入类型产生 返回类型。因此,使用

@overload
装饰器来 指定多个可接受的类型提示原型。这是我的 综合阅读多个网页,所以如果不完全 正确,谢谢纠正。

PySpark 包有一个

rdd.py
模块,其中包含以下内容 方法原型:

@overload
def toDF(
    self: "RDD[RowLike]",
    schema: Optional[Union[List[str], Tuple[str, ...]]] = None,
    sampleRatio: Optional[float] = None,
) -> "DataFrame":
    ...

我试图找到有关如何解释的信息

Tuple[str, ...]

页面讨论 一般情况下,容器参数的类型提示,但不是省略号 表示遵循方括号内的具体类型,后缀为 a 集装箱类型。

省略号不喜欢它在切片的上下文中,这是另一个 使用我在网上看到的提到的。

省略号的作用不同于代表无操作体,例如 与

pass

我该如何解释

Tuple[str, ...]

python containers type-hinting type-annotation
1个回答
0
投票

...
用于表明元组可以具有任意数量的元素,包括零。即

Tuple[str, ...]
表示模式参数应该是一个元组,其中每个元素的类型为
str
,并且它可以包含任意数量的此类元素,包括空元组。

© www.soinside.com 2019 - 2024. All rights reserved.