Seite 1 von 1
Linux eigene Module importieren?
Verfasst: Sonntag 26. September 2004, 23:16
von annihilation
Hi,
ich versuche Python, unter Linux, bekannt geben kann in welchen Ordnern er nach
modulen suchen soll.
Ich hab schon mit der SuFu versucht ihr im Forum was zu finden, gegoogelt und zig
Dateien durchgeguckt aber ich hab einfach nichts gefunden.
Hoffe Ihr könnt mir helfen
mfg
annihilation
Verfasst: Sonntag 26. September 2004, 23:35
von Dookie
Hi annihilation,
in einem Pythonscript kannst Du einen Pfad zum Suchpfad für Module folgendermassen hinzufügen.
Gruß
Dookie
Verfasst: Montag 27. September 2004, 08:09
von annihilation
Hi,
erstmal danke für Deine schnelle Hilfe. Nur hab ich leider immernoch ein kleines Problem
wenn ich
eingebe dann kommt immer diese Fehlermeldung.
Code: Alles auswählen
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'sys' is not defined
Hoffe meine Frage sind nicht zu dämlich .
mfg
annihilation
Verfasst: Montag 27. September 2004, 08:15
von mawe
Hi!
Du musst erst das Modul
sys importieren. Schreib am Anfang deines Scripts einfach
Gruß, mawe
Verfasst: Montag 27. September 2004, 14:50
von annihilation
Hi,
danke für die Antwor,. habs grad schon selbst rausgefunden.
Jedoch tat sich da bei mir gleich die nächste Frage auf
wo ist der Unterschied zwischen
from sys import *
import sys
Also für mich ist zwischen den beiden ausdrücken vom Sinn her kein Unterschied.
könnte mir das bitte nochmal jemand erleutern?
mfg
annihilation
Verfasst: Montag 27. September 2004, 14:57
von rogen
hier hilft SuFu weiter
Verfasst: Montag 27. September 2004, 16:02
von FiRe^
Bei
import sys musst du den Modulnamen immer dazuschreiben:
wenn Du aber
from sys import * schreibt, musst Du den Modulnamen nicht mehr schreiben:
Verfasst: Montag 27. September 2004, 16:21
von annihilation
Achso ok besten dank für die Antwort
Stimmt SuFu hätte warscheinlich geholfen
war aber grad zu faul
mfg
annihilation
Verfasst: Montag 27. September 2004, 17:09
von Dookie
Die verwendung von
import sys hat noch einen Vorteil.
Code: Alles auswählen
from sys import *
from os import *
path.append("/home/username/Python/libs/") # !!! Fehler
Da auch in os ein Objekt (Modul) mit dem name path existiert kommt der Fehler. Du kannst also nicht mehr auf path aus sys zugreifen. Ich verwende, bei kurzen Modulnamen immer die Form
import modul oder
from modul import objekt1, objekt2, ... So ist dann auch weiter unten im Code klar, was bei z.B.
sys.paht gemeint ist.
Gruß
Dookie
Verfasst: Dienstag 28. September 2004, 05:51
von RainBowBender
ich bevorzuge generell import gegenüber from x import *
Insbesondere bei mehreren APIs hält es den Code übersichtlicher und leichter wartbar. Außerdem verschmutzt es den eigenen Namensraum nicht.