pfad fuer packages

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
thomas15
User
Beiträge: 98
Registriert: Montag 7. April 2008, 19:07

Mittwoch 21. Januar 2009, 18:12

hi alle,

ich bin begeistert von der idee meine module in packages zu sortieren.
habe dieses auch nach der anleitung auf
http://docs.python.org/tutorial/modules.html
getan

meine daten liegen in
/develop/pyem

wenn ich nun mit ipython in das wurzelverzeichniss von dem package wechsel dann kann ich alle subpakete locker einbinden.
bin ich aber in einem anderen verzeichniss und mein pythonpath zeigt auf
/develop
dann findet
import pyem
das paket nicht.
fuer
pythonpath=/develop/pyem
gleiches spiel. es geht nur wenn ich im wurzelverzeichniss bin oder tiefer.
jemand eine idee wie man das beheben kann?

danke fuer die hilfe im vorraus,
thomas
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Mittwoch 21. Januar 2009, 18:14

Du hast sicherlich das hier überlesen:
Python Doc hat geschrieben: The __init__.py files are required to make Python treat the directories as containing packages
thomas15
User
Beiträge: 98
Registriert: Montag 7. April 2008, 19:07

Mittwoch 21. Januar 2009, 18:16

nein, die sind immer drin
/develop/pyem/__init__.py
und abwaerts

das oberste (in pyem) hat sogar die
__all__ = ["basic", "test"];
anweisung
thomas15
User
Beiträge: 98
Registriert: Montag 7. April 2008, 19:07

Donnerstag 22. Januar 2009, 12:23

muss ein __init__.py auch in
/develop
drin sein?
gibts irgendwo ein beispiel?
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 22. Januar 2009, 12:57

thomas15 hat geschrieben:muss ein __init__.py auch in
/develop
drin sein?
Nein, ``develop`` soll doch sicher kein Package sein, oder?
thomas15 hat geschrieben:gibts irgendwo ein beispiel?
So ziemlich jedes größere Python Package.
thomas15
User
Beiträge: 98
Registriert: Montag 7. April 2008, 19:07

Donnerstag 22. Januar 2009, 13:52

ok, danke.
geht jetzt, keine ahnung warum genau. aber es geht.
danke fuer die hilfe
Antworten