El día 24 de febrero de 2010 11:51, Muammar El Khatib <[email protected]> escribió: > 2010/2/24 Jesús Francisco <[email protected]>: >> En el mundo Unix desde hace mucho tiempo que se usa Python para muchas >> cosas. En particular existen muchos scripts desarrollados en Python >> que son parte integral de algunos sistemas. >> >> Para aquellos que usan Python 3.1 en un entorno Unix, es probable que >> se vean forzados a no instalarlo como el Python principal, debido a el >> software de terceros que asume que el Python instalado en uno de los >> Python 2.x. Por ejemplo, en ubuntu, se debe usar el nombre python31 >> para ejecutar el intérprete de Python 3.1. >> > > Esto es correcto. > >> En estos momentos estoy escribiendo un par de scripts en Python 3.1, >> pero por razones que el cruel destino no me explica, estoy haciendolo >> en una máquina Windows. Aquí me di cuenta que este dilema no es >> relevante: python no es nadie en Windows, y por ende hacer que python >> sea Python 3.1 y no el 2.6 no causa mayores problemas. >> >> Pero en el último script que hice en ubuntu tuve que escribir la >> siguiente cabecera: >> >> #!/usr/bin/env python31 >> >> Ahora, la pregunta ¿terminará Python 3.1 llamandose python31 para >> siempre?¿es incorrecto lo que hice?¿cómo debería resolver esto? > > Soy mantenedor de paquetes en Debian y te explicaré un poco al > respecto. /usr/bin/python es un enlace simbólico que apunta a > python2.5 (en el caso de Debian Testing). > > clau...@ccv:~$ ls -alF /usr/bin/python > lrwxrwxrwx 1 root root 9 Jan 30 13:23 /usr/bin/python -> python2.5* > > > Por tanto, si tu código es independiente de la versión de python en > sistema, con utilizar '#!/usr/bin/env python' tienes, si necesitas > alguna versión específica es preferible que utilices la forma que > describiste arriba, es decir, especificando la versión: #!/usr/bin/env > python3.1 (creo que te faltó el punto).
Bueno, no. Y he aquí una alerta a un inminente desastre: ubuntu: python31, debian:python3.1 Lo que he averiguado hasta ahorita es que lo mejor sería usar desde ahora en adelante: #!/usr/bin/python3 o #!/usr/bin/python2 Hasta que Python3 sea el estandar definitivo. Para ese entonces, todos los scripts que ya se habían escrito como: #!/usr/bin/python3 seguirán funcionando como Python3, y los nuevos scripts que digan: #!/usr/bin/python Funcionarán también como Python3. En ese entonces, los scripts en python2 deberían actualizarse así: #!/usr/bin/python2 > > Para saber un poco más de los enlaces simbólicos o alternatives en > sistemas basados en Debian, lee e manual de update-alternatives(8). Tu > siempre puedes cambiar a dónde apuntan estos enlaces simbólicos en el > sistema. > > Saludos, > -- > Muammar El Khatib. > Linux user: 403107. > GPG Key = 127029F1 > http://muammar.me | http://proyectociencia.org > ,''`. > : :' : > `. `' > `- > _______________________________________________ > GUPy mailing list > [email protected] > http://proyectociencia.org/cgi-bin/mailman/listinfo/gupy > _______________________________________________ GUPy mailing list [email protected] http://proyectociencia.org/cgi-bin/mailman/listinfo/gupy
