usar script ejecutar desde consola como comandos archivos archivo python shell interpreter

script - ¿Cómo agrego la finalización de pestañas al shell de Python?



ejecutar python en linux (6)

Al iniciar una aplicación django utilizando el python manage.py shell , obtengo un shell de InteractiveConsole: puedo usar la finalización de pestañas, etc.

Python 2.5.1 (r251:54863, Apr 15 2008, 22:57:26) [GCC 4.0.1 (Apple Inc. build 5465)] on darwin Type "help", "copyright", "credits" or "license" for more information. (InteractiveConsole)

Cuando acaba de iniciar un intérprete de Python utilizando python , no ofrece la finalización de tabulación.

¿Puede alguien decirme qué está haciendo django para ofrecerme una consola interactiva, o qué debo hacer para iniciar una consola interactiva sin una aplicación django?


¡Parece que python3 lo tiene fuera de la caja!



En Python3, esta característica está habilitada de forma predeterminada. Mi sistema no tenía instalada la línea de readline del módulo. Estoy en Manjaro. No me enfrenté a este problema de finalización de tabulación en otras distribuciones de Linux (elemental, ubuntu, mint).

Después de instalar el módulo de pip , durante la importación, arrojaba el siguiente error-

ImportError: libncursesw.so.5: cannot open shared object file: No such file or directory

Para resolver esto, corrí

cd /usr/lib ln -s libncursesw.so libncursesw.so.5

Esto resolvió el error de importación. Y, también trajo la terminación de tabulación en la réplica python sin ninguna creación / cambios de .pythonrc y .bashrc .



Pude haber encontrado una manera de hacerlo.

Crea un archivo .pythonrc

# ~/.pythonrc # enable syntax completion try: import readline except ImportError: print("Module readline not available.") else: import rlcompleter readline.parse_and_bind("tab: complete")

luego en su archivo .bashrc, agregue

export PYTHONSTARTUP=~/.pythonrc

Eso parece funcionar.


Yo uso ptpython. https://github.com/jonathanslenders/ptpython/

ptpython es una maravillosa herramienta autocompletar shell cmd. instalar ptpython es muy fácil, use la herramienta pip

pip install ptpython

y para django shell, debes importar el env de django, como este

importación os

os.environ.setdefault ("DJANGO_SETTINGS_MODULE", "testweb.settings")

¡¡Confía en mí, esta es la mejor manera para ti !!!