[Python-es] ¿Incompatibilidad entre la versión 2.6 y la 2.7?

Juan M. Puertas soft.sirius en gmail.com
Jue Ago 27 13:21:39 CEST 2015


Hola a todos.
Además de descubrir como funciona wget, sigo buscando la causa de que un
sencillo programa funcione en un Servidor con Python 2.6 y no lo haga con
Python 2.7. Para ello he forzado la versión así:

#!/usr/bin/env python2.6

A pesar de forzar la versión, en el Servidor que falla, el error lo da en
un módulo situado en Python 2.7

 File "/usr/lib/python2.7/UserDict.py", line 23, in __getitem__
    raise KeyError(key)
KeyError: 'SCRIPT_NAME'

 Siguiendo el consejo de Edison, adjunto los dos módulos que conforman el
programa.
Muchas gracias por vuestra ayuda. :-)

El 26 de agosto de 2015, 23:52, Juan M. Puertas <soft.sirius en gmail.com>
escribió:

> Muchas gracias por vuestra ayuda.
> Resulta que he descargado en el Servidor el archivo python con wget, y al
> parecer wget sólo toma la parte html del archivo y no la parte Python.
> Desconozco lo que hace wget, pero creo que esa es la causa.
> Todos los días se aprende algo.
> Saludos. :-)
>
>
> El 26 de agosto de 2015, 23:27, Edison Ibañez <edison en openmailbox.org>
> escribió:
>
>> Si es un error de sintaxis, pasalo con pep8 para que identifiques el error
>>
>> ejecuta en la terminal:
>>
>> sudo pip install flake8
>>
>> flake8 --ignore=E221,E701,E202 archivo.py
>>
>> El 26/08/15 a las 16:17, Juan M. Puertas escribió:
>> > Hola Alex.
>> > En FTP tenía bien el usuario "root" pero sigue sin darme acceso. Pongo
>> > lo siguiente:
>> > Servidor 195.114.210.208
>> > Usuario   root
>> > Y la contraseña que me has enviado. Me da error crítico, no se pudo
>> > conectar al Servidor.
>> > ¿Con los datos que me has dado tú puedes entrar bien por FTP?
>> >
>> > He probado con un programa pequeñito que hace una multiplicación
>> > mediante sajax1.py, se llama multiply.py . Resulta que en mi Servidor
>> > funciona bien, y en el vuestro da error. Esto es algo muy, muy extraño.
>> > Aún más extraño: cuando uso vi para ver el archivo multiply.py, sólo
>> > aparece la parte html, no la que está en Python, en mi Servidor se ve
>> > todo, es extraño total, cualquiera diría que vuesto Servidor tiene un
>> > duende :-))
>> > Necesito FTP, para ver mejor qué pasa cuando envío el archivo.
>> > Saludos.
>> >
>> > El 26 de agosto de 2015, 23:02, Juan M. Puertas <soft.sirius en gmail.com
>> > <mailto:soft.sirius en gmail.com>> escribió:
>> >
>> >     Hola.
>> >     He forzado al programa para que utilice la versión 2.6 así:
>> >     #!/usr/bin/env python2.6
>> >     y el error persiste,
>> >     :-?
>> >
>> >
>> >     El 26 de agosto de 2015, 22:31, Juan M. Puertas
>> >     <soft.sirius en gmail.com <mailto:soft.sirius en gmail.com>> escribió:
>> >
>> >         Hola Kiko.
>> >         He hecho lo siguiente por consola:
>> >
>> >         |$readlink -f $(which python)|xargs -I %sh -c 'echo -n "%: "; %
>> -V'|
>> >
>> >         Y devuelve:
>> >         /usr/bin/python2.7: Python 2.7.3
>> >
>> >         Es extraño que con esta versión el programa de el error que da,
>> >         no se me ocurre que pueda ser otra la causa.
>> >
>> >         Gracias :-)
>> >
>> >         El 26 de agosto de 2015, 21:35, Kiko <kikocorreoso en gmail.com
>> >         <mailto:kikocorreoso en gmail.com>> escribió:
>> >
>> >
>> >
>> >             El 26 de agosto de 2015, 21:23, Juan M. Puertas
>> >             <soft.sirius en gmail.com <mailto:soft.sirius en gmail.com>>
>> escribió:
>> >
>> >                 ​Hola amigos:
>> >                 En un servidor con Ubuntu está instalada la versión
>> >                 2.6.5 y en otro servidor con Debian está instalada la
>> >                 versión 2.7.3.
>> >                 El programa comienza así:
>> >
>>  ___________________________________________________________________________________
>> >                 #!/usr/bin/env python
>> >                 import cgitb;cgitb.enable()
>> >                 import sajax1
>> >
>> >                 def multiply(x,y):
>> >                    try:
>> >                       float_x, float_y = float(x), float(y)
>> >                    except:
>> >                       return 0
>> >                    return float_x * float_y
>> >
>> >                 sajax1.sajax_init()
>> >                 sajax1.sajax_export(multiply)
>> >                 sajax1.sajax_handle_client_request()
>> >
>> >                 print """
>> >                 <html>
>> >                 (...)
>> >
>>  ____________________________________________________________________________________
>> >
>> >                 En la versión 2.6.5 el programa funciona bien.
>> >
>> >                 En la versión 2.7.3 ​me dice:
>> >                     <html>
>> >                     ^
>> >                 SyntaxError: invalid syntax
>> >
>> >
>> >
>> >                 ¿
>> >                 ​Sabeis si existe una incompatibilidad entre ambas
>> >                 versiones?
>> >
>> >
>> >             No debería.
>> >
>> >             Estás seguro que estás usando python 2.7.3 en la máquina
>> debian?
>> >             > which python
>> >             qué te indica?
>> >
>> >
>> >                 ​Muchas gracias por vuestra ayuda :-)​
>> >
>> >
>> >                 _______________________________________________
>> >                 Python-es mailing list
>> >                 Python-es en python.org <mailto:Python-es en python.org>
>> >                 https://mail.python.org/mailman/listinfo/python-es
>> >                 FAQ: http://python-es-faq.wikidot.com/
>> >
>> >
>> >
>> >             _______________________________________________
>> >             Python-es mailing list
>> >             Python-es en python.org <mailto:Python-es en python.org>
>> >             https://mail.python.org/mailman/listinfo/python-es
>> >             FAQ: http://python-es-faq.wikidot.com/
>> >
>> >
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > Python-es mailing list
>> > Python-es en python.org
>> > https://mail.python.org/mailman/listinfo/python-es
>> > FAQ: http://python-es-faq.wikidot.com/
>> >
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20150827/696a199a/attachment.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: sajax1.py
Type: text/x-python
Size: 3802 bytes
Desc: no disponible
URL: <http://mail.python.org/pipermail/python-es/attachments/20150827/696a199a/attachment.py>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: multiply.py
Type: text/x-python
Size: 952 bytes
Desc: no disponible
URL: <http://mail.python.org/pipermail/python-es/attachments/20150827/696a199a/attachment-0001.py>


Más información sobre la lista de distribución Python-es