2009-11-21 32 views
0

我試圖讓Yahoo! BOSS包的工作,但是當我嘗試運行示例文件我得到以下錯誤:Python 2.6數據庫錯誤

$ 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相關的更改可能導致此錯誤?

回答

1

as是2.5中的一個僞關鍵字,它在2.6中變成了一個完整的關鍵字 - 這絕對是您的問題的原因!

至於解決方法,請嘗試在呼叫結束時添加一個**{'as': 'total'},並刪除純文本as='total' - 應該可以工作。

+0

謝謝,亞歷克斯。我很確定你的建議是有效的,因爲當我加入你的修復程序時,錯誤的實例消失了。 不幸的是,現在它在.egg文件中拋出了類似的錯誤,所以我可能需要完全放棄db方法 - 看起來這種語法在BOSS框架中很流行。 – Dan