PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Python - Wie Werte aus tuple lesen?



newc0mer
25-03-2008, 15:56
Hi

Ich habe eine except OSError. Die Fehlermeldung wird gespeichert in sys.exc_info(). Dieses Object enthält unter anderem 0 --> Errorno, 1 --> Errorstr.
Wie komme ich nun an diese ran?

Ich weiss nicht, wie ich über dieses Objekt darauf zugreifen muss...

Wie finde ich die Struktur heraus?

danke

mehlvogel
25-03-2008, 15:58
(errno, errstr) = sys.exc_info()


Sollte es, wenn es so ist wie du beschrieben hast, tun.

Gerade noch ins Python Manual geschaut:


the best solution is to use something like exctype, value = sys.exc_info()[:2] to extract only the exception type and value.

(Hervorhebung von mir)

newc0mer
26-03-2008, 13:00
Hi!

Danke. Das funtzt nun:


try:
os.chdir(_CONFIG_ROOT_PATH)
ConfigFiles = os.listdir(_CONFIG_ROOT_PATH)
except OSError:
value = sys.exc_info()[:2]
print "[!] Error: " + value[1][1]
raise SystemExit

Output, wenn _CONFIG_ROOT_PATH einen Pfad enthält der nicht gültig ist. Ich habe aber die Objektstruktur des Objekts "value" nur herausgefunden, weil ich mit Eclipse Debuged habe! Gibts da nichts wie z.B bei PHP var_dump(); welche Struktur und Inhalt einer Variable, Array oder Objekt anzeigt?