folgendes Problem: Ich habe auf zwei Rechnern unterschiedliche sqlite-Module zur Verfügung. Mein Programm soll auf beiden Rechnern laufen. Da sich beide Module an die dbapi halten, kommt das Programm auch mit beiden klar. Die Import-Anweisungen sehen bisher so aus:
Code: Alles auswählen
#from pysqlite2 import dbapi2 as sqlite
#import sqlite3 as sqlite
Code: Alles auswählen
#sqlite = None
#if module1exists:
# sqlite = __import__('sqlite3', globals(), locals(), [])
#elif module2exists:
# sqlite = __import__('pysqlite2', globals(), locals(), ['dbapi2'])
(1) Wie stelle ich fest, ob ein bestimmtes Modul verfügbar ist zum importieren? (Ich habe gesehen, dass import-Fehler mittels try-except abgefangen werden können. Aber eine try-except-Verschachtelung, bis das richtige Modul gefunden ist, fände ich sehr unschön, oder?)
(2) Wie müssen die import-Anweisungen richtig lauten, um das gleiche Ergebnis wie im ersten Beispiel zu erhalten? __import__ scheint der richtige Weg zu sein, aber ich erhalte ein anderes Ergebnis als im ersten Besipiel.
Vorab schon mal vielen Dank für jegliche Hilfe...