[python] PYTHONPATH

"Ing. Vladislav Ludík" vlada na ludik.cz
Neděle Leden 15 09:34:45 CET 2012


Ano, přečetl jsem si to. Je to však zásah, který nepřežije reinstalaci 
čehokoliv.

Nakonec jsem se rozhodl pro tu nejtriviálnější cestu, jak zpřístupnit 
moje moduly:

1) do pracovního adresáře jsem vložil modul /mojemoduly.py/ s obsahem:

/# Pridani vlastni cesty k mym modulum
import sys
_nova_cesta = "/cesta_k_mym_modulum"
if not _nova_cesta in sys.path:
    sys.path.insert( 1, _nova_cesta)
/
2) na začátku KAŽDÉHO mého programu, který využívá mé moduly dám:
/import mojemoduly/

A je poznámka pro vývojáře pythonu:

Nestálo by za úvahu přidat do systému jednoduchou funkci, například 
nějaký soubor python_path.pth,
kde by se to dalo nastavit dodatečně a trvale kdykoliv po instalaci 
dodatečně ?

Jinak díky za rady.

V.L.

Visgean Skeloru napsal(a):
> Zkoušel si to co jsem psal?
>
>     A slightly less convenient way is to edit the site.py file in
>     Python’s standard library, and modify sys.path. site.py is
>     automatically imported when the Python interpreter is executed,
>     unless the /-S/ switch is supplied to suppress this behaviour. So
>     you could simply edit site.py and add two lines to it:
>
>
> Prostě stačí v kořenové složce projektu vytvořit site.py který upraví 
> sys.path, je to oficiální postup.  
> http://docs.python.org/install/index.html#modifying-python-s-search-path
>
> Jestli je to jeden projekt tak je to v pohodě a stačí upravit jenom 
> ten jeden soubor...
>
> 2012/1/14 "Ing. Vladislav Ludík" <vlada na ludik.cz <mailto:vlada na ludik.cz>>
>
>     Tak jsem si myslel, že jsem to vyřešil:
>
>     do adresáře    /etc/profile.d   jsem vložil nový soubor  
>      local_python.sh
>
>     který obsahuje:
>
>     # doplnim cestu k mym modulum
>     PYTHONPATH="/python/mojemoduly/":"${PYTHONPATH}"
>     export PYTHONPATH
>
>     Po reboot kontrola     sys.path:
>
>     ['', '/python/mojemoduly', '/etc/profile.d', '/usr/lib/python2.7',
>     '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk',
>     '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload',
>     '/usr/local/lib/python2.7/dist-packages',
>     '/usr/lib/python2.7/dist-packages',
>     '/usr/lib/python2.7/dist-packages/PIL',
>     '/usr/lib/python2.7/dist-packages/gtk-2.0',
>     '/usr/lib/pymodules/python2.7']
>
>     zapíše správně moji cestu (sice i cestu '/etc/profile.d'), ale
>     problém mám jinde.
>
>
>     Spuštěním programu v crontab ten pak havaruje na tom, že nemůže
>     naimportovat moje moduly.
>
>     Pokusy s doplněním cesty přímo v crontab nebo nepřímo v cron.d
>     nevedly k ničemu.
>
>     Co s tím opravdu nevím.
>
>     Díky za nové podněty.
>
>     V.L.
>
>     _______________________________________________
>     Python mailing list
>     Python na py.cz <mailto:Python na py.cz>
>     http://www.py.cz/mailman/listinfo/python
>
>
>
>
> -- 
> PGP pub key:
>            
> http://keyserver.pgp.com/vkd/SubmitSearch.event?SearchCriteria=visgean%40gmail.com
>            http://www.abclinuxu.cz/lide/visgean/gpg
>            A453 B7F3 33D9 3BE6 2B8A | F014 5347 EBAC 0A5A 3E92
> Jabber: visgean na jabber.org <mailto:visgean na jabber.org> | 
> visgean na jabber.cz <mailto:visgean na jabber.cz>
> Github: http://github.com/Visgean
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
>
> __________ Informace od NOD32 6783 (20120110) __________
>
> Tato zprava byla proverena antivirovym systemem NOD32.
> http://www.nod32.cz
>   

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20120115/c51907d6/attachment.html>


Další informace o konferenci Python