Shell de python en modo consola

Inigo Aldazabal Mensa inigo_aldazabal en ehu.es
Vie Sep 26 10:26:37 CEST 2008


El Jueves, 25 de Septiembre de 2008 19:09, Oswaldo Hernández escribió:
> Hola,
>
> Estoy haciendo una aplicación que trabajo en modo consola, sin utilizar
> ninguna libreria grafica. Una de las posibilidades que me gustaria que
> tuviera es lanzar una shell de python la consola.
>
> ¿Conoceis alguna libreria que lanze una shell en modo texto?
>
> Gracias.

Si te entiendo bien lo que quieres, puedes usar para ello IPython, una 
shell avanzada con autocompletado, introspección y demás[1].

[code]
from IPython.Shell import IPShellEmbed
ipshell = IPShellEmbed()
print "Entrado en IPython shell."
ipshell()
print "IPython shell finalizada."
[/code]

En el manual de la versión 8.4 (la actual es la 9.1) hay un apartado 
específico al respecto. Están en fase de integración con otra rama del 
proyecto, y en el manual actual no aparece, pero lo puedes encontrar en 
las fuentes de la 8.4[2], apartado 9.2 Customization -> Embedding IPython. 
A este respecto la 9.2 funciona exactamente igual.

Por cierto que independientemente del tema, la recomiendo a todos como 
sustituto a la shell de python, para mi es imprescindible desde que la 
conocí. De hecho mi forma de programar es IPython+vim, y no hace falta 
nada mas. Para depurado también es muy util: ejecutas tu script desde 
IPython y cuando casca haces %debug y tienes acceso al espacio de nombre y 
demás. Vamos, una vez la pruebas no lo puedes dejar, como el propio 
python, jaja ;-).

Un saludo.

[1] http://en.wikipedia.org/wiki/IPython
[2] http://ipython.scipy.org/dist/ipython-0.8.4.tar.gz
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





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