bedingter Modul import macht probleme VOR dem import statmnt
Verfasst: Freitag 7. Februar 2003, 11:46
Moin!
Ich bin bei meiner Arbeit mit python 2.2.1 auf folgendes problem gestossen:
wenn ich das folgende Programm aufrufe, kommt es zu einem "UnboundLocalError" bei dem "print xml.version_info" statement. Python glaubt also plötzlich, das xml eine locale variable ist, die aber noch nicht definiert ist.
der Gebrauch von xml dient hier nur als Beispiel (ich will hier nicht mit meinen eigenen Paketen rumschmeissen
wenn ich das "import xml.expat" in "import xml.expat as fooBar" umändere läufts.
Kann mir jemand erklären (oder sagen, wo ich's nachlesen kann), warum das passiert?
Wird das import statement etwa schon wärend des Parsens ausgeführt, weshalb dann xml zu einem localen( nicht belegten) symbol wird?
mfg.
Uwe
Ich bin bei meiner Arbeit mit python 2.2.1 auf folgendes problem gestossen:
wenn ich das folgende Programm aufrufe, kommt es zu einem "UnboundLocalError" bei dem "print xml.version_info" statement. Python glaubt also plötzlich, das xml eine locale variable ist, die aber noch nicht definiert ist.
Code: Alles auswählen
import xml
def importTest():
print xml.version_info
if xml.version_info=="":
import xml.expat
importTest()
wenn ich das "import xml.expat" in "import xml.expat as fooBar" umändere läufts.
Kann mir jemand erklären (oder sagen, wo ich's nachlesen kann), warum das passiert?
Wird das import statement etwa schon wärend des Parsens ausgeführt, weshalb dann xml zu einem localen( nicht belegten) symbol wird?
mfg.
Uwe