使用 nltk 在 Python 3 中使用 next 时出现 StopIteration 错误

问题描述

我想在 Python 3 中运行代码。它可以在 Python 2.7 中运行,并且输入不为空。部分代码如下:

parser = nltk.ChartParser(zinc_grammar.GCFG)
parse_trees = [next(parser.parse(t)) for t in tokens]

但它在最后一行显示stopiteration 错误。有谁知道如何解决它?有什么替代方法吗?

解决方法

我意识到问题出在 tokens 的定义上,因为我使用了 lambda 函数。我改了,问题解决了。