[python] PYTHONPATH
Visgean Skeloru
visgean na gmail.com
Neděle Leden 15 12:24:36 CET 2012
Ehm, to nechápu, ty místo toho jednoho souboru kde by stačilo jednou
upravit sys.path a pak se o nic nestarat tak vytvoříš nový soubor který má
identické vlastnosti ale budeš ho muset importovat v každém scriptu, k čemu
je to dobré? Ten soubor site.py přežije reinstalaci čehokoliv stejně jako
soubor mojemoduly.py, jestli narážíš na to že při reinstalaci se změní
cesta tak to se ti ale změní i pro tvůj soubor mojemoduly.py, budeš to tam
prostě muset nastavit tak jako tak... A k tvé poznámce: ne, nestálo,
jestli něco takového chceš tak si prostě vytvoř sym link v site-packages
nebo kdekoliv jinde. A pokud to chceš opravdu nastavit tak můžeš třeba v
souboru /usr/lib/python2.7/dist-packages/site.py....
2012/1/15 "Ing. Vladislav Ludík" <vlada na ludik.cz>
> **
> 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.pyand 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>
>
>> 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
>> 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 | visgean na jabber.cz
> Github: http://github.com/Visgean
>
> ------------------------------
>
> _______________________________________________
> Python mailing listPython na py.czhttp://www.py.cz/mailman/listinfo/python
>
>
>
> __________ Informace od NOD32 6783 (20120110) __________
>
> Tato zprava byla proverena antivirovym systemem NOD32.http://www.nod32.cz
>
>
>
> _______________________________________________
> Python mailing list
> 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 | visgean na jabber.cz
Github: http://github.com/Visgean
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20120115/f2468d8f/attachment.html>
Další informace o konferenci Python