2010-12-27 19 views
85

Mögliche Duplizieren:
How can I check the syntax of Python script without executing it?Compile (aber nicht ausgeführt) ein Python-Skript

Wie kompilieren ich ein Python-Skript, ohne es zu laufen? Ich möchte nur das Skript auf Syntaxfehler überprüfen. Ich hatte auf einen einfachen Befehlszeilenschalter gehofft, aber ich habe nichts in python --help gesehen. Ich würde gern eine Antwort sowohl für Python 2 und Python 3.

+0

@sukhbir: Sie haben Recht, aber ich habe nur die Antwort realisiert, und es ist nicht in diesem Thread angegeben. – asmeurer

+0

@asmeurer: Ja, es ist, die Antwort, die Sie gepostet haben, ist in dieser Frage. – Falmarri

+1

Kompilieren und Syntax-Checking sind wirklich verschiedene Dinge. Sie wollen die Syntax überprüfen, Die Antwort ist in dem anderen Thread. Sie * fragen * wie man es kompiliert, das ist eine andere Frage, Sie sollten das Thema wirklich ändern. –

Antwort

7

Eine Möglichkeit, so etwas zu tun ist (für test.py):

python -c "__import__('compiler').parse(open('test.py').read())" 

Das für Python funktioniert 2.x

12

Sie können pylint verwenden, um Syntaxfehler sowie kleinere Fehler zu finden, z. B. den Zugriff auf undefinierte Variablen in einer selten verwendeten bedingten Verzweigung.

297
python -m py_compile script.py 
+1

danke. Das ist einfach großartig! und viel einfacher zu erinnern als @Greg Hewgills Version;) –

+4

Dies sollte die akzeptierte Antwort sein. –

+0

Genau das, was ich mir erhofft habe - danke –

Verwandte Themen