PEP 526说明如下:
请注意,虽然语法确实允许元组打包,但它不允许在使用元组解包时注释变量的类型。
为什么python解包时不支持变量的类型注释?PS。我必须先对类型进行注释,然后再进行拆包,这很好,只是在拆包时进行注释会更整洁。
PEP 526说明如下:
请注意,虽然语法确实允许元组打包,但它不允许在使用元组解包时注释变量的类型。
为什么python解包时不支持变量的类型注释?PS。我必须先对类型进行注释,然后再进行拆包,这很好,只是在拆包时进行注释会更整洁。
在PEP 526的拒绝/推迟提案部分中有一些关于此的信息:
允许元组解包的类型注释:这会导致歧义:不清楚此语句的含义:
x, y: T
x 和 y 都是 T 类型,还是我们希望 T 是分布在 x 和 y 上的两个项目的元组类型,或者 x 具有 Any 类型而 y 具有 T 类型?(如果这发生在函数签名中,后者就是这意味着什么。)与其让(人类)读者猜测,我们至少现在禁止这样做。
该评论似乎暗示最终可能会提出一种更简单的语法的提议,该语法不易被误解。现在,我们不得不单独注释元组的类型。