Ich bin an diesem minimal gültig suche Programm (?):Pylint Syntaxfehler auf gültiges Programm (raise mit drei Argumenten/Ausdrücke)
import sys
def f():
try:
raise Exception()
except Exception:
raise Exception(), None, sys.exc_info()[2]
f()
Dieses Programm führt und wie erwartet verhalten, die Erhaltung den Stack-Trace die innere Ausnahme, wie durch help("raise")
dokumentiert. Allerdings, wenn ich pylint
darauf laufen, das ist, was ich bekommen:
$ pylint program.py
************* Module tmp
E: 7, 0: invalid syntax (<string>, line 7) (syntax-error)
Die Syntax-Fehler verschwindet, wenn ich den zweiten und dritten Ausdrücke raise
entfernen.
Ist das ein Fehler in pylint, oder übersehe ich etwas?
Ich habe komplett vergessen, wie ich pylint mit python3 installiert hatte, danke! In Bezug auf die Verwendung von 'raise' falsch, die Dokumentation auf meiner Maschine explizit besagt, 'Wenn das erste Objekt eine Instanz ist, ist der Typ der Ausnahme die Klasse der Instanz, die Instanz selbst ist der Wert, und das zweite Objekt muss sein "Keine". Hat sich das zwischen den Versionen geändert? – goncalopp