[python] Program vlastni env

Vlada Macek macek na sandbox.cz
Pondělí Září 21 14:13:42 CEST 2009


Skarka pEtR wrote:
> Zdravím, existuje možnost jak nastavit programu, aby používal jinou
> verzi pythonu, třeba 2.4 místo 2.3 která je v env. Nechci přepisovat
> u všech souborů první řádek. Chci něco jako vlastní env pro program.
> Linux, CentOS Děkuji za pomoc Petr Skarka

Není přímo odpověď na otázku: Našel jsem zajímavý program
http://github.com/ghewgill/pyqver, který se pokouší ze zdrojáku
odhadnout minimální potřebnou verzi Pythonu. Také je to pěkná
ilustrativní ukázka introspekce kódu Pythonem samotným. Šťouralům
doporučuji.

Pak mě ještě napadl aktivní test verze a automatické spuštění správného
interpretu:

import sys, os, platform
py_version = tuple(int(x) for x in platform.python_version_tuple())[:3]
if py_version <= (2,4,0):
    os.execvp('python2.4', sys.argv[0:1] + sys.argv)

Protože ale v řadě 2.x existuje zpětná kompatibilita (nové verze pouze
přidávaly vlastnosti), většina programátorů toto obvykle neřeší a Python
se upgraduje až když skript spadne.

-- 
\//\/\
http://macek.sandbox.cz
http://www.easis.cz

------------- další část ---------------
A non-text attachment was scrubbed...
Name: macek.vcf
Type: text/x-vcard
Size: 517 bytes
Desc: [žádný popis není k dispozici]
URL: <http://www.py.cz/pipermail/python/attachments/20090921/ef40585b/attachment.vcf>


Další informace o konferenci Python