¿Por qué el módulo de línea de lectura de Python no está disponible en OS X?

StackOverflow https://stackoverflow.com/questions/327251

  •  11-07-2019
  •  | 
  •  

Pregunta

La documentación de Python readline dice "Disponibilidad: Unix". Sin embargo, no parece estar disponible en OS X, aunque otros módulos marcados como Unix están disponibles. Esto es lo que estoy usando:

$ uname -a
Darwin greg.local 8.11.1 Darwin Kernel Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386 i386 i386
$ which python
/usr/bin/python
$ python
Python 2.3.5 (#1, Nov 26 2007, 09:16:55) 
[GCC 4.0.1 (Apple Computer, Inc. build 5363) (+4864187)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import readline
Traceback (most recent call last):
  File "", line 1, in ?
ImportError: No module named readline
>>> 

También instalé Python 2.5 a través de MacPorts, pero readline tampoco está disponible allí.

¿Qué puedo hacer para proporcionar la funcionalidad readline para la función raw_input () de Python en OS X?

¿Fue útil?

Solución

¿Ha intentado instalar el puerto py-readline (o py25-readline para Python 2.5)?

Además, en el fragmento de arriba, NO estás usando la MacPort python, sino Apple Python.

La versión de MacPort debe ubicarse en la estructura del directorio / opt / local . Debes verificar tu ruta.

Otros consejos

Pruebe rlwrap . Debería funcionar con cualquier versión de python y, en general, con cualquier shell.

Instalar a través de brew install rlwrap en Mac OS X

uso como rlwrap python . También almacena la historia.

No se envía en OS X debido a problemas de licencia (restricciones traídas por la GPL).

Macports python debería estar bien si tiene instalado el paquete readline.

Debería poder obtener soporte de readline en Python nativo de Mac. Aparentemente se implementa a través de la línea de edición de BSD, y debe iniciarlo de manera ligeramente diferente. Acabo de probar esto en una Mac y funciona bien (OS X 10.5.7). Consulte man python para obtener más detalles, la sección "Edición de entrada interactiva y sustitución de historial". - reflejado en la web aquí .

luga ~ $ python 
Python 2.5.1 (r251:54863, Feb  6 2009, 19:02:12) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import rlcompleter
>>> import readline
>>>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top