PYTHONPATH und sys.path

02/02/2012 - 10:45 von ole-usenet-spam | Report spam
Hallo Gruppe,

Wenn ich folgendes Miniprogramm ausführe:
-8<
import sys
for p in sys.path:
print p
-8<

ergibt sich mit

PYTHONPATH=/home/ole/some/where python ppath.py

folgendes:
8<-
/home/ole/pythonsrc/
/usr/lib64/python2.6/site-packages/urwid-0.9.9.1-py2.6-linux-x86_64.egg
[...]
/home/ole/some/where
/usr/lib64/python26.zip
[...]
8<-

d.h. mein vorgegebener PYTHONPATH ist nicht am Anfang, sondern dort sind
diverse site-packages. Das Verzeichnis, welches ppath.py enthàlt, ist
allerdings ganz am Anfang.

Wie bekomme ich meine eigenen Pakete vor die Site-Packages?

Ole
 

Lesen sie die antworten

#1 Markus Zapke-Gründemann
02/02/2012 - 11:24 | Warnen spam
Hallo Ole.

Olе Streicher schrieb:
d.h. mein vorgegebener PYTHONPATH ist nicht am Anfang, sondern dort sind
diverse site-packages. Das Verzeichnis, welches ppath.py enthàlt, ist
allerdings ganz am Anfang.

Wie bekomme ich meine eigenen Pakete vor die Site-Packages?


Das geht zum Beipspiel mit folgendem Code:

ALLDIRS = ['usr/local/pythonenv/PYLONS-1/lib/python2.5/site-packages']

import sys
import site

# Remember original sys.path.
prev_sys_path = list(sys.path)

# Add each new site-packages directory.
for directory in ALLDIRS:
site.addsitedir(directory)

# Reorder sys.path so new directories at the front.
new_sys_path = []
for item in list(sys.path):
if item not in prev_sys_path:
new_sys_path.append(item)
sys.path.remove(item)
sys.path[:0] = new_sys_path

Quelle:
http://code.google.com/p/modwsgi/wi...vironments


Viele Grüße

Markus

Ähnliche fragen