Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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 如何正确注释生成器以传递过梁,如Pycharm';s_Python_Python 3.x - Fatal编程技术网

Python 如何正确注释生成器以传递过梁,如Pycharm';s

Python 如何正确注释生成器以传递过梁,如Pycharm';s,python,python-3.x,Python,Python 3.x,我已经创建了一个生成器管道,这些生成器相互连接,并由脚本末尾的csv.Dictwriter.writerows函数调用驱动。以下是管道: chunks = (gen_issue_chunk( j, start, jql, expand='changelog', fields=desired_fields) for start in start_at) issues = gen_is

我已经创建了一个生成器管道,这些生成器相互连接,并由脚本末尾的
csv.Dictwriter.writerows
函数调用驱动。以下是管道:

chunks = (gen_issue_chunk(
        j,
        start,
        jql,
        expand='changelog',
        fields=desired_fields)
              for start in start_at)
    issues = gen_issues(chunks)

    # A set to collect all issue ID's that need to be removed from the db.
    to_delete = set()
    rows = process_issues(issues, to_delete)
例如,在
gen_issues
函数中,我的函数签名如下所示:

def gen_issues(chunks) -> Generator[resources.Issue, None, None]:
    """


    :param chunks:
    :return:
    """
    for chunk in chunks:
        yield from chunk
生成器
类型是从
键入
模块导入的。但是当这被传递到
process\u issues
函数中时,当我尝试迭代这些问题时,我得到一个linter警告,提示应该是
collections.Iterable
,而不是收到
Generator[…]
。当一个函数需要一个
生成器
,并且它说所需的签名是
\uu生成器[any,any,None]
时,我在传入这种类型时也会收到警告


注释生成器的正确(最佳实践)方法是什么?

据我所知,PyCharms类型检查器没有做错什么。看到类似的问题了(尽管我不认为这是我所能理解的愚弄)。最好与他们的问题追踪者核实一下。好的,这是有道理的,谢谢你澄清这一点!