gpt4 book ai didi

生成器表达式的 Python PEP 484 类型注释

转载 作者:太空狗 更新时间:2023-10-30 01:05:47 33 4
gpt4 key购买 nike

返回 generator expression 的函数的正确类型注释是什么? ?

例如:

def foo():
return (x*x for x in range(10))

我搞不懂这是不是 ->Iterator[int], -> Iterable[int], -> Generator[int, None , 无], 或其他东西。

如果应该有一种——最好只有一种——显而易见的方法来做到这一点,那么这里的显而易见的方法是什么?

最佳答案

您提到的所有三种形式都列为 valid alternatives in documentation , Generator 表达式只是创建一个只生成的生成器。

引述 1:

A generator can be annotated by the generic type Generator[YieldType,
SendType, ReturnType]
.

引述 2:

If your generator will only yield values, set the SendType and ReturnType to None

引述 3:

Alternatively, annotate your generator as having a return type of either Iterable[YieldType] or Iterator[YieldType]:

关于生成器表达式的 Python PEP 484 类型注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42227288/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com