The amazing Spyder, man!!!

Spyder es la abreviación de Scientific PYthon Development EnviRonment. Según la documentación oficial, Spyder es un potente entorno de desarrollo interactivo para Python con edición avanzada, ‘testeo’ interactivo y capacidades de introspección y depuración (debugging) y, esto es lo que nos interesa, un entorno de computación numérica gracias al soporte de IPython y de populares librerías como numpy, scipy y matplotlib (todas conocidas ya por aquí).
Se puede instalar tanto en Linux como en Windows (y en Mac para los amantes de Alcatraz). En el siguiente enlace podéis ver documentación para la instalación y los requerimientos previos para poder instalarlo.
En un vistazo general podemos ver que es muy adaptable a nuestras necesidades (o manías) permitiendo:

  • definir accesos rápidos,
  • Gestionar el PYTHONPATH de manera visual

  • Acceso a la documentación de las librerías más importantes (Numpy, Scipy, Matplotlib,…) desde la ayuda del propio IDE
  • Acceso directo a herramientas (y documentación) Qt.
  • Configuración del coloreado de la sintáxis
  • Podemos colocar los paneles como mejor nos convenga. En general, yo lo configuro con un explorador de archivos a la izquierda, el editor a la derecha y abajo cosas útiles como consolas, el historial, y el explorador de variables:
  • Pero con el mismo ratón se puede recolocar todo de forma sencilla y se puede elegir que aparece en la pantalla desde el menú ‘view | Windows and toolbars’:

Puedes ver más pantallazos en el siguiente enlace.
El editor en sí permite resaltar código Python, C/C++ y Fortran, completado de código, permite analizar el código con pylint, depurar con pdb (o winpdb), avisos y errores en tiempo real con pyflakes,… Lo mínimo que lleva hoy en día cualquier editor potente.

Además se pueden correr consolas (python y ipython o terminales de línea de comandos del propio sistema operativo) como procesos separados, permite inspeccionar las variables, importar datos en  varios formatos como ficheros de datos numpy (npy), ficheros de datos matlab (mat), csv, HDF5 (h5),…, permite guardar datos de una variable de la sesión en formato spydata (formato interno de spyder), matlab o hdf5, posibilidad de ver el historial, permite búsquedas de texto con resaltado de todas las ocurrencias y más.
La documentación online la tenéis en: http://packages.python.org/spyder/
El blog del equipo de desarrollo está en: http://spyder-ide.blogspot.com.es/
La lista de correo está en: http://groups.google.com/group/spyderlib
Y, por supuesto, la página web, está en: http://code.google.com/p/spyderlib/
En definitiva, Spyder es un IDE que tiene todo lo necesario para que nuestros desarrollos sean más cómodos y además viene con las baterías científicas de python a tope de energía.

7 pensamientos sobre “The amazing Spyder, man!!!”

  1. Pingback: The amazing Spyder, man!!! | Python-es | Scoop.it

  2. Wow, me he echado unas buenas risas con el título jajaja xD
    Muchas gracias por el artículo! No había probado Spyder hasta ahora, puede que le de una oportunidad 😛 Un saludo!

  3. Lo he instalado, he estado jugando un poco con él y me gusta como alternativa para la gente acostumbrada al IDE que ofrece matlab. Yo seguiré usando emacs+IPython, pero está bien tener alguna referencia para recomendar.
    Por cierto, he visto que nombrabais NodePy en twitter, ¿lo habéis usado?
    Un saludo!

    1. Pues le he echado un vistazo, por curiosidad. Sobre todo probé a dibujar regiones de estabilidad, para compararlo un poco con lo que ya había hecho sobre el tema, y vi que tiene un montón de tipos de esquemas numéricos. Por ejemplo, puedes diseñar un método Runge-Kutta a partir de los coeficientes de su tabla de Butcher, u obtener los de uno ya existente.
      Como explica David Ketcheson en su blog, es un programa para gente con necesidades muy específicas y que ha salido de su propia investigación, así que es consciente de que no lo usará mucha gente.
      ¿Por qué, te interesa? 😛

  4. Pingback: Bitacoras.com

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

four + one =