[Python-de] PYTHONPATH und sys.path
Olе Streicher
ole-usenet-spam at gmx.net
Mo Feb 6 10:51:11 CET 2012
Christian Heimes <lists at cheimes.de> writes:
> Deine Erfahrung widerspricht aber der Implementation, Designidee und
> auch der Realtität. Sorry, aber du liegst falsch. ;)
Eine der großen Werbeversprechen von Python ist, dass es sich so
verhält, wie man es gemeinhin auch erwartet. So richtig scheint das auf
diesen Punkt nicht zuzutreffen. Gewinnt man hier wirklich so viel, dass
man dieses Versprechen dafür aufgeben sollte?
> Wenn du die Implementation in Py_InitializeEx() verfolgst, wirst du
> feststellen, dass in Py_GetPath() die Umgebungsvariable PYTHONPATH vor
> initsite() ausgewertet wird. Das wurde gemacht, damit man eine eigene
> site.py bzw. sitecustomize.py über PYTHONPATH einfügen kann. Der Code in
> site.py parst alle *.pth Dateien in den site-packages und fügt diese
> *vorne* in sys.path ein.
So richtig leuchtet mir das aber nicht ein: abgesehen davon, dass eine
usereigene (über PYTHONPATH gefundene) site.py wohl seltener ist als
ein für eigene Erweiterungen gesetzter PYTHONPATH (und damit der
Pragmatismus von Python zuschlagen sollte), müsste doch PYTHONPATH
zumindest dann am Ende sitzen, wenn es keine usereigene site.py gibt.
Viele Grüße
Ole
Mehr Informationen über die Mailingliste python-de