【问题标题】:Function is not iterating through a generator函数没有通过生成器迭代
【发布时间】:2021-09-30 19:31:34
【问题描述】:

我有一个函数,它有一个“for”循环,它必须迭代生成器,但实际上,它不会迭代。

def join_probabilities(prob_generator, importance):
    probabilities, count = {}, 0
    print('Before the "for" loop')
    for text_probabilities in prob_generator:
        print('In the "for" loop')

我添加了 2 个打印件,但是当我运行该函数时,我只看到其中的第一个。可能有什么问题?

【问题讨论】:

  • prob_generator 是空的,所以 for 循环根本没有迭代
  • 几乎可以肯定,因为prob_generator 是空的。
  • 如果没有看到调用它的代码,我们无法真正回答。这就是问题所在。
  • 你是怎么调用函数的?
  • 创建一个minimal reproducible exampleprob_generator 为空,但此代码不会在不显示创建生成器并调用此函数的代码的情况下重现问题。

标签: python python-3.x for-loop iteration generator


【解决方案1】:

谢谢,我找到了问题。生成器是空的,问题在于创建生成器。但这已经是另一个问题了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-10
    • 1970-01-01
    • 2018-05-16
    • 2019-09-02
    • 2011-01-07
    • 1970-01-01
    • 2023-03-20
    相关资源
    最近更新 更多