import modul

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
moloko

Dienstag 30. März 2004, 09:00

Hallo,

ich möchte auf einem Webserer eine Python Anwendung laufen lassen. Leider fehlt auf dem Server das Modul XML. Und da ich kein rootzugriff habe kann ich es auch nicht nachinstallieren.
Ist es möglich die import Anweisung so zu formulieren das ich das Modul von einem anderen Pfad importieren kann?
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Dienstag 30. März 2004, 17:47

Hi. Im Modul sys gibt es eine Liste, in der alle Pfade gespeichert sind, in denen Python nach Modulen sucht, wenn sie importiert werden. Es sollte also kein Problem sein, das xml Package nachzurüsten.

Code: Alles auswählen

import sys
sys.path.append('path/zu/xml/package-verzeichniss')
Nun kannst du einfach import xml schreiben. Ob du noch eine Extra setup.py erstmalig laufen lassen musst, um das Package einzubinden weiß ich nicht, galube es aber nicht...


Milan
moloko

Donnerstag 1. April 2004, 07:50

Hallo,

vielen Dank für die Hilfe. Das funktioniert soweit erstmal thx!
MaVoj
User
Beiträge: 20
Registriert: Freitag 23. Januar 2004, 12:52
Wohnort: Berlin

Montag 5. April 2004, 09:16

Kann ich auch ein Modul importieren, dass sich direkt im aufrufenden Verzeichnis befindet OHNE den Path über sys.path.append('path/zu/xml/package-verzeichniss') anzugeben.
Ich möchte nämlich die Datei 'minidom.py' aus dem Install-Verzeichnis in mein Arbeitsverzeichnis kopieren und dort editieren und dann eben dieses File einbinden.
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Montag 5. April 2004, 09:36

Hi. Kurz: Jein. Normalerweise sollte es gehen, weil Python den Pfad zu dem Aufrufverzeichniss automatisch setzt, aber das ist nicht der sauberste Stil (deswegen bin ich mir nicht sicher). Ich würde sagen einfach ausprobieren...

Milan

ps: bitte keine crosspostings. Poste das nächste mal bitte in dem Thread in den Allgemeinen Fragen und verweise dann lieber auf diese Thread hier durch einen Link. So bleibt der Zusammenhang gewährt (für alle die es nicht wissen: der Thread hier).
Antworten