【问题标题】:Python 2.6 DB errorPython 2.6 数据库错误
【发布时间】:2009-11-21 06:47:16
【问题描述】:

我正在尝试获取 Yahoo! BOSS 包工作,但是当我尝试运行示例文件时,我收到以下错误:

$ python examples/ex5.py 
  File "examples/ex5.py", line 28
    tb = db.group(by=["yn$title"], key="rank", reducer=lambda d1,d2: d1+d2, as="total", table=tb, norm=text.norm)
                                                                             ^
SyntaxError: invalid syntax

此特定错误仅发生在 Python 2.6 中。当我尝试在 Python 2.5 中运行时,不会发生此错误(但它会引发其他错误,因为我还没有在 2.5 中安装许多其他支持包)。

请注意,所有示例文件都在此 db.group 函数上失败,在每种情况下,克拉都突出显示“as”。

是否存在可能导致此错误的 2.6 相关更改?

【问题讨论】:

    标签: python python-2.6 yahoo-boss-api


    【解决方案1】:

    as 在 2.5 中是一个伪关键字,在 2.6 中它已成为一个成熟的关键字——这绝对是你问题的原因!

    至于解决方法,请尝试在通话结束时添加 **{'as': 'total'} 并删除普通的 as='total' - 这应该可以。

    【讨论】:

    • 谢谢,亚历克斯。我很确定您的建议有效,因为当我合并您的修复程序时,该错误实例消失了。不幸的是,现在它从 .egg 文件中抛出了类似的错误,所以我可能需要完全放弃 db 方法——看起来这种语法在 BOSS 框架中很流行。