unexpected EOF while parsing

Python Erreur courante

Explication

L'erreur `SyntaxError: unexpected EOF while parsing` (« fin de fichier inattendue ») signifie que Python a atteint la **fin du fichier** alors qu'il attendait encore quelque chose : presque toujours une **parenthèse, un crochet ou une accolade non fermés**, ou un bloc resté incomplet à la fin du fichier. ```python nombres = [1, 2, 3 # le crochet n'est jamais fermé print(nombres) # SyntaxError: unexpected EOF while parsing ```

Causes courantes

- **Parenthèse `(`, crochet `[` ou accolade `{` non fermés**. - **Chaîne multiligne** ou guillemet non terminé. - **Bloc `if`/`for`/`def`** ouvert sans corps en fin de fichier. - **Appel de fonction** dont on a oublié la parenthèse fermante.

1. Fermez les parenthèses et crochets

nombres = [1, 2, 3]   # ✅ crochet fermé
print(nombres)

2. Comptez les ouvertures et fermetures

Un éditeur avec appariement des parenthèses surligne la paire manquante. Placez le curseur sur une ( pour voir sa ) correspondante.

3. Vérifiez la dernière ligne réellement écrite

L'erreur pointe la fin du fichier, mais la cause est l'ouverture non refermée, parfois plusieurs lignes plus haut. Remontez jusqu'à la dernière parenthèse/crochet ouvert.

Comment prevenir cette erreur

- **Utilisez un éditeur** qui ferme et apparie automatiquement les parenthèses. - **Activez un linter** (`ruff`) qui signale les délimiteurs non fermés. - Indentez et aérez le code pour repérer visuellement les blocs incomplets. - Référence : [docs.python.org — SyntaxError](https://docs.python.org/fr/3/library/exceptions.html#SyntaxError).

Besoin d'aide sur votre projet ?

Besoin d'aide sur un probleme technique ? Decrivez-le pour des recommandations.

Nous contacter

Questions frequentes

L'erreur pointe la dernière ligne, mais elle me semble correcte. Pourquoi ?
Parce que Python ne détecte le problème qu'en arrivant au bout du fichier : la vraie cause est une parenthèse ou un crochet ouvert plus haut et jamais refermé. Remontez à la dernière ouverture non appariée.
Quelle différence avec `invalid syntax` ?
`invalid syntax` signale une faute de structure quelque part dans une ligne ; `unexpected EOF` signale spécifiquement que quelque chose d'ouvert (parenthèse, bloc) n'a jamais été refermé avant la fin du fichier.

Erreurs similaires

Chaque semaine, le meilleur de la tech francaise

Tendances, salaires, outils et opportunites — directement dans votre boite mail.

Gratuit. Desabonnement en un clic. Pas de spam.