Immer der name ist nicht definiert Fehler in python
Wie Sie wissen, wenn wir einfach tun:
>>> a > 0
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
a > 0
NameError: name 'a' is not defined
Gibt es eine Möglichkeit das abfangen der Ausnahme/Fehler und extrahieren Sie den Wert 'ein'.
Ich brauche das, weil ich bin eval
uating einigen dynamisch erstellten Ausdrücke, und möchte die Namen abzurufen, die nicht definiert sind, in Ihnen.
Hoffe, dass ich mich klar genug ausgedrückt.
Danke!
Manuel
- Wenn es nicht definiert ist, wie kann es einen Wert?
- Ich möchte zum extrahieren der Namen, nicht den Wert. Ich sagte: "den Wert 'a'", nicht "der Wert von a".
- Warum müssen Sie verwenden
eval
? Wenn Sie möchten, erstellen Sie ein Python-shell ist dies nicht das richtige Werkzeug. Wenn Sie möchten, erstellen Sie eine Ausdrucksauswertung für Ihre Anwendung, ist dies nicht das richtige Werkzeug. - Was wäre das richtige Werkzeug? -.- Sie könnte beinhalten, dass in Ihrem vorherigen Kommentar...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie nicht möchten, zu verwenden, regex, Sie könnten so etwas tun, anstatt
Können Sie analysieren Ausnahmen-string für " extrahieren Wert.
Kein
import exceptions
benötigt Python 2.xOrdnen Sie die Referenz für 'a' als solche: