update mac descargar python macos

mac - Historial de modo interactivo de Python y teclas de flecha



uninstall python mac (4)

Me preguntaba si alguien puede explicar por qué, de repente, en el modo interactivo de Python, todas las teclas de flecha están fallando.

Cuando presiono el botón arriba, por ejemplo, para pasar por el historial de comandos, obtengo "^ [[A". Lo mismo con cualquier otra tecla de flecha.

No tengo idea de por qué sucedió esto y funcionó antes (en OS X Snow Leopard). ¿Alguien sabe una manera de arreglar esto?

Muchas gracias,

sol


Este comportamiento generalmente se muestra cuando no tiene soporte de readline . Si está utilizando MacPorts, intente port install readline , ver si lo solucionará. También puede ver esta página para algunas explicaciones adicionales.

(También es útil saberlo: algunos programas no usan readline incluso si están presentes en el sistema. Puede forzarlos usando rlwrap ( port install rlwrap ). Por ejemplo: rlwrap ocaml -init code.ml iniciará OCaml, lea code.ml e inicie REPL con el soporte de readline)


Finalmente conseguí este trabajo. Simplemente tuve que instalar readline con easy_install y los cursores y el retroceso comenzó a funcionar mágicamente.

sudo /opt/local/bin/easy_install-2.5 readline


Si está utilizando Homebrew, esta es una solución fácil:

brew uninstall python brew uninstall readline brew install readline --universal brew install python

Eso lo arreglé para mí (ejecutando OS X Mavericks 10.9.5)


No dices qué Python estás usando, pero los síntomas que mencionas en realidad son causados ​​porque Python no se construye con el soporte de readline . En estos días, Python en OS X puede construirse para usar la biblioteca de línea de editline GNU o la biblioteca de línea de editline suministrada por editline (AKA libedit ). Puede usar los siguientes dos comandos para mostrar exactamente qué Python está usando. Si eso no te ayuda a descubrir qué está sucediendo, edita tu pregunta para mostrar el resultado de esos comandos.

Aquí hay un ejemplo que muestra un reciente MacPorts Python 2.6 en OS X 10.6:

$ python -c ''import sys;print(sys.version);print(sys.executable)'' 2.6.5 (r265:79063, Jul 15 2010, 01:53:46) [GCC 4.2.1 (Apple Inc. build 5659)] /opt/local/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python $ otool -L $(python -c ''import readline; print(readline.__file__)'') /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload/readline.so: /opt/local/lib/libreadline.6.1.dylib (compatibility version 6.0.0, current version 6.1.0) /opt/local/lib/libncursesw.5.dylib (compatibility version 5.0.0, current version 5.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.0)

El prefijo de ruta /opt/local/ es la ubicación predeterminada para el software instalado por MacPorts y la salida de otool indica que el módulo readline este Python está vinculado dinámicamente a la biblioteca readline GNU instalada por MacPorts.