2011-05-04 4 views
1

J'ai un module python qui comprend de nombreuses définitions de fonctions, toutes statiques. Puis à la fin, j'ai ajouté une définition de classe cependant, l'interprète me présente avec l'erreur suivante:Comment cette syntaxe est-elle invalide?

Traceback (most recent call last):                          
    File "~/file.py", line 136                   
    class InvalidPredicateError(Exception):             
     ^                     
SyntaxError: invalid syntax 

je ne vois pas de problème avec cela du tout. Est-ce parce que j'essaie de définir une classe dans un module statique?

+0

Nous allons devoir voir le module que vous avez créé pour donner une réponse définitive. Cela pourrait être un certain nombre de choses, vraiment. –

+2

Il est probablement indentant, habituellement. Veuillez poster votre code entier, et assurez-vous que le retrait indiqué ici correspond à ce que vous êtes en train d'éditer. –

+1

Oui, nous n'avons pas nécessairement besoin de voir le fichier entier, mais au moins la fonction/classe précédente ou quelques lignes avant la ligne de problème. –

Répondre

11

Vous avez une erreur sur la ligne avant le cours. Par exemple:

$ cat -n pyinvclass.py 
    1 def f(): 
    2 return (1, 2 
    3 
    4 class InvalidPredicateError(Exception): 
    5 pass 
$ python pyinvclass.py 
    File "pyinvclass.py", line 4 
    class InvalidPredicateError(Exception): 
     ^
SyntaxError: invalid syntax 
+0

+1 pour reproduire le même message d'erreur. Mais le PO semble penser qu'il n'y a eu aucune erreur jusqu'à ce qu'il ajoute la classe à la fin, et si c'est vrai (je suis sceptique), nous allons devoir attendre plus de détails. –