2009-11-21 7 views
0

J'essaie d'obtenir le Yahoo! travail paquet BOSS, mais lorsque je tente d'exécuter le fichier exemple que je reçois l'erreur suivante:Python 2.6 DB erreur

$ 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 

Cette erreur particulière ne se produit que dans Python 2.6. Lorsque je tente d'exécuter en Python 2.5, cette erreur ne se produit pas (mais elle renvoie d'autres erreurs car je n'ai pas installé un certain nombre d'autres paquets de support dans 2.5).

Notez que tous les fichiers d'exemple échouent sur cette fonction db.group, avec le carat en surbrillance "as" dans chaque cas.

Existe-t-il une modification liée à la version 2.6 qui pourrait causer cette erreur?

Répondre

1

as était un pseudo-mot-clé dans 2.5, c'est devenu un mot-clé à part entière dans 2.6 - c'est certainement la cause de votre problème! Pour la solution de contournement, essayez d'ajouter un **{'as': 'total'} à la fin de votre appel et supprimez le as='total' ordinaire - cela devrait fonctionner.

+0

Merci, Alex. Je suis à peu près sûr que votre suggestion a fonctionné, car cette instance de l'erreur a disparu lorsque j'ai incorporé votre correctif. Malheureusement, maintenant il lance une erreur similaire à partir d'un fichier .egg, donc je peux avoir besoin d'abandonner complètement la méthode db - il semble que cette syntaxe soit répandue dans le framework BOSS. – Dan