Modul (xml.etree) mal gefunden, mal nicht?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
ichen
User
Beiträge: 2
Registriert: Dienstag 20. Mai 2008, 17:14

Hi
ich bin grade dabei mich in Python einzuarbeiten und bin gerade auf etwas gestoßen, was mich doch sehr verwundert. Ich versuche das etree.ElementTree-Modul einzubinden. In der Datei steht folgendes:

Code: Alles auswählen

# file /home/my_name/Python/xml.py
import xml.etree.ElementTree
Wen ich das über die Python-shell (python /home/my_name/Python/xml.py) oder IDLE (F5) starte bekomme ich einen Fehler, dass das Modul nicht gefunden wurde.
Sobald ich aber direkt in der Python-Shell oder IDLE den Befehl gebe

Code: Alles auswählen

$python import xml.etree.ElementTree
bekomme ich keinen Fehler.
Interesant ist auch, dass wenn in der Datei nur steht:

Code: Alles auswählen

# file /home/my_name/Python/xml.py
import xml
Bekomme ich auch beim Programmstart über die Shell/IDLE keinen fehler, er findet da also das Modul 'xml', aber die Untermodule (s.o.) nicht.
Woran kann das liegen?
Das Modul ist auch korrekt installiert (usr/lib/python2.5/xml/etree/ElementTree.py) und in der sys.path steht 'usr/lib/python2.5' mit drin, müsste also das Modul eigentlich auch finden.
Warum funktioniert der Import aus dem Programm heraus nicht? Wo ist der Fehler?
danke
Chris
ps: OS ist Ubuntu (Hardy), python 2.5.2
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Wenn deine Datei xml.py heißt versucht sie sich selber zu importieren (mit from xml. ... import).
TUFKAB – the user formerly known as blackbird
ichen
User
Beiträge: 2
Registriert: Dienstag 20. Mai 2008, 17:14

Hi
da hab ich wohl den Wald vor lauter Bäumen nicht gesehen :wink:. Ist ja logisch, wenn python das Modul erst im Ordner des Programms sucht, findet er xml.py. Die untermodule existieren aber nicht in dem Ordner.
Danke.
Chris
Antworten