El día 24 de febrero de 2010 15:21, Muammar El Khatib
<[email protected]> escribió:
> 2010/2/24 Jesús Francisco <[email protected]>:
>> 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
>>
>
> Vaya. No sabía que ellos camabiaron eso.
>
>> 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
>>
>
> Esto debe ser en el caso de Ubuntu específicamente, ya que python2 y
> python3 no existen en debian de esa manera:
>
> ccv:/tmp# ls /usr/bin/*python*
> /usr/bin/dh_python  /usr/bin/python  /usr/bin/python2.5  /usr/bin/python2.6
>
>> seguirán funcionando como Python3, y los nuevos scripts que digan:
>>
>> #!/usr/bin/python
>>
>
> Claro, porque será por defecto el enlace simbólico a python3.
>
>> Funcionarán también como Python3. En ese entonces, los scripts en
>> python2 deberían actualizarse así:
>>
>> #!/usr/bin/python2
>>
>
> Gracias por la información. Si puedes pasar un link con esa
> información, te lo agradecería.
>

jajaja, esta información es la que he recolectado en otras listas.

Voy a pedir las fuentes (referencias) gracias

> 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

Responder a