Thomas 'PointedEars' Lahn <PointedEars@web.de> writes:
wie schon an anderer Stelle im Thread diskutiert. Wo genau? Message-ID: <87ipozgtsa.fsf@news.ole.ath.cx> und folgende. Sowas kommt halt von "Score adjusted". Ich denke nicht, dass ich mir Deine Unverschämtheiten noch länger gefallen lassen muss.
Musst Du nicht. Es ist nur halt nicht besonders sinnvoll, wenn man in einem Thread, von dem man Teile ignoriert, mitdiskutieren möchte. Man läuft halt Gefahr, Diskussionsteile zu verpassen.
Du hast mypkg hier gar nicht importiert, daher wird auch der code in mypkg/__init__.py nicht ausgeführt ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ und sys.path nicht geändert. ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nicht? Nein, *hattest* Du nicht.
mypkg/__init__.py wird m.E. auch bei from mypkg.database.Database import Database ausgeführt. Diese Zeile hatte ich bei mir drin, und wie man am Ergebnis sieht, wird auch sys.path entsprechend erweitert. Was Du mit dem obigen Satz meinst, ist mir daher unklar.
Wer schreibt dann wohl den dritten Eintrag? Du kannst natürlich auch vor das "from mypkg..." noch ein "import mypkg" setzen -- das ändert am Ergebnis nichts. Es ändert am Ergebnis schon etwas, nur *anscheinend* nichts Relevantes.
Eben. Unabhängig ob es drin ist, wird das falsche Base-Package importiert. Warum ist das import jetzt für das Problem wichtig, dass Du es hier erwähnst?
Dein Beispiel hat mit meinem nicht allzuviel zu tun. Logisch, dass das *so* nicht funktioniert. Es ist Dein Beispiel -- Nein, war es nicht.
OK, ich habe die urprüngliche Klassenhierarchie verwendet (database.Database.Database ist abgeleitet common.Base.Base). Der Mechanismus __init__.py ist allerdings identisch zu Deinem. Und ich habe eine Implementation für otherpackage zugefügt. Welche dieser Änderungen bewirkt denn, dass es nicht funktioniert? Oder soll ich es nochmal mit Deinem Code wiederholen?
Ich habe allerdings inzwischen die Lust verloren, mich weiter mit dem Problem zu beschäftigen. Denn es ist nicht mein Problem, und derjenige, der das Problem hat, steuert selbst nichts Konstruktives zur Lösung bei.
Moment: ich habe Deinen Vorschlag implementiert und gestestet, genauso wie alle anderen hier genannten. Und ich habe eine Reihe konstruktiver Vorschläge gemacht, von sys.path.insert(0,...) bis hin zur Anfrage, ob module-Finder bzw. Loader hier helfen könnten. Wenn ich das Problem selbst lösen könnte, würde ich hier nicht fragen. Was erwartest Du also?