Hallo,
mich wuerde interessieren, wie ihr es aufsetzen wuerdet, wenn man zur Laufzeit eines Programmes
das Vorhandensein eines Modules abfragt.
Folgendes Beispiel:
Man weiss nicht, ob das tkinter Modul auf dem Rechner installiert ist und moechte zur Not
dann auf Batchebene weitermachen wenn das Programm gestartet wurde.
Bis jetzt wuerde ich es notfalls irgendwie auf Shell Ebene abfragen bevor ich dann Python starte,
aber das ist maechtig krampfig irgendwie.
Ideen fuer mich?
Thanks
Abfrage zur Laufzeit ob Modul vorhanden ...
Code: Alles auswählen
try:
from <bla> import <blub>
except ImportError:
<dumdidum>
@ts7343: Einfach importieren und den `ImportError` entsprechend behandeln wenn das Modul nicht importiert werden kann.
Prinzipiell kann man bei jedem Fehler schauen, welcher Fehler erzeugt wurde und dann bei Bedarf durch eine entsprechende Fehlerbehandlung entsprechend darauf reagieren.ts7343 hat geschrieben:ImportError ist das magische Wort, genial!
Man sollte dabei immer den konkreten erwarteten Fehler abfangen. Der folgende Code ist böse:
Code: Alles auswählen
x = 1
try:
x ← 2 / x
except:
print "Unbekannter Fehler"
print x
Code: Alles auswählen
x = 1
try:
x ← 2 / x
except ZeroDivisionError:
print "Es wurde versucht x durch Null zu dividieren"
print x