[python-nl] howto PYTHONPATH

Floris van Manen vm at klankschap.nl
Tue May 27 11:41:28 CEST 2014


Natuurlijk is virtualenv te verkiezen, maar dat lost de vraag nog niet op.
Hoe wordt de volgorde binnen het PYTHONPATH bepaald?
Ik gebruik de macport distributie, dus alles zou (in principe) in de /opt/local folder moeten komen.
Maar dan zie je plotseling toch een /System of /Library entry verschijnen...

.F




On 27 May 2014, at 10:35, Jaap Broekhuizen <jaapz.b at gmail.com> wrote:

> Ik denk dat het sowieso beter is om virtualenv te gebruiken als je daar de
> mogelijkheid voor hebt. Die zorgt er namelijk voor dat je een specifieke versie
> van Python, met een specifieke lijst van pakketten kan gebruiken in een
> ge-sandboxede omgeving. Daar heb je dus geen last van dit soort dingen waar
> andere pakketjes je Python path kapot maken.
> 
> Als je niet weet wat virtualenv is: http://virtualenv.readthedocs.org/en/latest/
> 
> -- 
> Met vriendelijke groet,
> 
> Jaap Broekhuizen
> jaapbroekhuizen.nl
> 
> On Tue, May 27, 2014 at 10:17:46AM +0200, Johan Otten wrote:
>> Het werkt *niet *recursief,
>> En hier word het path samen gesteld.
>> 
>> 
>> 
>>   - /usr/lib/python2.6/site.py
>>   - /usr/lib/python2.6/dist-packages/site.p
>> 
>> 
>> het is geen goed idee om deze files aan te passen, als je problemen hebt
>> met je packages/libs zou ik voor virtualenv gaan.
>> http://superuser.com/questions/247620/how-to-globally-modify-the-default-pythonpath-sys-path
>> 
>> 
>> 2014-05-27 9:57 GMT+02:00 Floris van Manen <vm at klankschap.nl>:
>> 
>>> Kan iemand mij de werking van PYTHONPATH uitleggen?
>>> En dan niet zozeer waarvoor het is maa wel hoe of dat de inhoud van die
>>> omgevingsvariabele wordt samengesteld.
>>> Los van het feit dat je er zelf iets in kunt zetten, blijkt dat onderweg
>>> naar het opstarten van python er ook een en ander wordt toegevoegd. Hoe kun
>>> je inzicht krijgen wie er wat op welk moment toevoegt?  Wie bepaald de
>>> volgorde?
>>> 
>>> In mijn geval geeft binnen ipython de sys.path een volgend beeld:
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame-1.9.2a0-py2.7-macosx-10.9-x86_64.egg
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyInstaller-2.1-py2.7.egg
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.7.3-py2.7.egg
>>> /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/readline
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
>>> /Users/vm/Library/Python/2.7/lib/python/site-packages
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Numeric
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyObjC
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/gtk-2.0
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/wx-3.0-osx_cocoa
>>> /Library/Python/2.7/site-packages
>>> 
>>> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/IPython/extensions
>>> /Users/vm/.ipython
>>> 
>>> Maar ik heb geen idee wie het /System/Library/... erin heeft geplaatst (en
>>> op die plek) met alle gevolgen voor niet vinden van de juiste versies...
>>> Waarom staan er doublures in?
>>> Wordt er standaard niet recursief de paden afgegaan?
>>> Wie kan hier wat licht op schijnen ?
>>> 
>>> .Floris
>>> 
>>> _______________________________________________
>>> Python-nl mailing list
>>> Python-nl at python.org
>>> https://mail.python.org/mailman/listinfo/python-nl
>>> 
> 
>> _______________________________________________
>> Python-nl mailing list
>> Python-nl at python.org
>> https://mail.python.org/mailman/listinfo/python-nl
> 
> _______________________________________________
> Python-nl mailing list
> Python-nl at python.org
> https://mail.python.org/mailman/listinfo/python-nl



More information about the Python-nl mailing list