Python Wolfram Alpha API: StopIteration

2024-04-19 22:12:43 发布

您现在位置:Python中文网/ 问答频道 /正文

如何避免stopiteration错误?我不知道代码可能要迭代的任何函数或循环。在

import wolframalpha

client = wolframalpha.Client('My Key is Goes Here')
res = client.query('pi')

print next(res.results).text

Tags: key函数代码importclienthereismy
2条回答

您对next的使用正是造成StopIteration错误的原因。 Python针对Wolframalpha的API提供了一个迭代器,可以循环使用(next只获取“next”结果,而不是所有结果)

可以使用try/except子句捕获错误:

try:
    print next(res.results).text
except StopIteration:
    print "No results"

我从未使用过wolframalpha,但看起来应该是这样

for result in res.results:
    print result.text

编辑:我现在已经安装了wolframalpha,我发现该查询(以及我尝试过的其他查询)在res.results中没有结果。相反,它们有pods。您可以将pods迭代为in the docs

^{pr2}$

相关问题 更多 >