[pyar] Configurar IPython
fisa
fisadev en gmail.com
Mar Jun 26 02:06:39 ART 2012
El día 26 de junio de 2012 01:33, Alejandro J. Cura
<alecu en protocultura.net> escribió:
> 2012/6/25 fisa <fisadev en gmail.com>:
>> El día 25 de junio de 2012 19:55, Milton Labanda
>> <1000ton.lab en gmail.com> escribió:
>>> alguien me puede ayudar con:
>>> como configurar ipython para que soporte mas de un nivel de autocomplateado
>>> (cuando se presiona . y TAB) Que tengo que tocar en el ipythonrc?
>>>
>>
>> A qué te referís con "más de un nivel"?
>>
>> Si te referis a que cuando escribas:
>> a.una_funcion().otr
>> y presiones tab, te autocomplete "otra_funcion", no es un tema de
>> configuración, es un tema de que es imposible de hacer.
>
> Imposible?
> Acá te mando un ninja para que te asesore: http://youtu.be/auVJF44XSnM
>
> saludos,
> --
> alecu
Sí, quizás "imposible" a secas fue demasiado. Debería haber dicho
"complicado, y en muchos casos imposible".
Casos donde es imposible: en los que se pueden devolver objetos de
diferente tipo, como None vs otra cosa, y que la elección depende de
valores que se van a conocer recién en ejecución.
Ejemplo:
def funcion_mala(texto):
if len(texto) > 5:
return texto.upper()
else:
return None
valor = raw_input()
x = funcion_mala(valor).
Al apretar ese "." del final, ninja no puede saber con seguridad el
tipo de lo que va a devolver funcion_mala(valor), así que simplemente
muestra una lista con cosas que hay en el archivo (variables,
funciones, etc).
De hecho yo también tengo algo como eso de ninja andando en vim :)
En mi vim escribo:
a = [x for x in range(100)]
a.
Y al apretar ese "." aparece autocompletado ofreciendo append(),
count(), etc.. Cosa que incluso ninja no supo adivinar :p
Saludos!
--
fisa - Juan Pedro Fisanotti
More information about the pyar
mailing list