Ich benutzte früher perl -c programfile
um die Syntax eines Perl-Programms zu prüfen und es dann zu beenden, ohne es auszuführen. Gibt es eine gleichwertige Möglichkeit, dies für ein Python-Skript zu tun?
Antworten
Zu viele Anzeigen?
user225312
Punkte
117771
Rosh Oxymoron
Punkte
19299
jmd_dk
Punkte
10751
Hier ist eine andere Lösung, die die ast
Modul:
python -c "import ast; ast.parse(open('programfile').read())"
Um dies sauber aus einem Python-Skript heraus zu tun:
import ast, traceback
filename = 'programfile'
with open(filename) as f:
source = f.read()
valid = True
try:
ast.parse(source)
except SyntaxError:
valid = False
traceback.print_exc() # Remove to silence any errros
print(valid)
Brian C.
Punkte
4692
Pyflakes tut, was Sie verlangen, es prüft nur die Syntax. Aus der Doku:
Pyflakes gibt ein einfaches Versprechen ab: Es wird sich niemals über den Stil beschweren, und es wird sich sehr, sehr bemühen, keine falsch-positiven Ergebnisse auszugeben.
Pyflakes ist auch schneller als Pylint oder Pychecker. Das liegt vor allem daran, dass Pyflakes nur den Syntaxbaum jeder Datei einzeln untersucht.
Installation und Verwendung:
$ pip install pyflakes
$ pyflakes yourPyFile.py
- See previous answers
- Weitere Antworten anzeigen