Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 返回生成器表达式时出现Mypy错误_Python_Type Hinting_Mypy - Fatal编程技术网

Python 返回生成器表达式时出现Mypy错误

Python 返回生成器表达式时出现Mypy错误,python,type-hinting,mypy,Python,Type Hinting,Mypy,我有这样一个函数: def foo(some_list: List[Any]) -> Generator[Any, None, None]: return (element for element in some_list) 根据文档的说明,这应该是几种正确的方法之一,以键入提示此函数返回值。然而mypy抱怨它得到了一个迭代器[Any]作为返回值: error: Incompatible return value type (got "Iterator[Any]", expect

我有这样一个函数:

def foo(some_list: List[Any]) -> Generator[Any, None, None]:
    return (element for element in some_list)
根据文档的说明,这应该是几种正确的方法之一,以键入提示此函数返回值。然而mypy抱怨它得到了一个
迭代器[Any]
作为返回值:

error: Incompatible return value type (got "Iterator[Any]", expected "Generator[Any, None, None]")
这是mypy中的一个错误还是我忽略了什么?

我认为这可能是一个错误——问题似乎是mypy将生成器理解的类型推断为
迭代器[Any]
(我同意这似乎是错误的)。这之后会引起问题,因为
Iterator[Any]
不是
Generator[Any,None,None]
的有效子类型——事实上,情况正好相反。我会尝试在mypy问题跟踪器上提交错误报告?好的,完成: