2011-10-14 5 views
12

A menudo uso R para analizar datos, y realmente disfruto Notepad ++ junto con NppToR. Especialmente, NppToR permite ejecutar una parte del código sin mucha molestia. Solo destaco un fragmento de código R para ejecutar y presiono F8. Entonces el código mágicamente se ejecuta en la consola R.Bloc de notas ++ ejecutar código seleccionado en la consola de python sin problemas

Ahora, estoy obligado a utilizar Python para analizar datos. Sé que ipython es genial para trabajar de forma interactiva, pero siempre es muy molesto copiar un fragmento de código python y pegarlo manualmente en la consola de ipython. Además, la sangría a menudo se mezcla y, por lo tanto, no se pueden ejecutar las líneas enteras. Tenga en cuenta que quiero ejecutar líneas de códigos 'seleccionadas', no el archivo completo.

Así que estoy buscando un programa/complemento/macro similar a NppToR, pero trabajando con la consola python/ipython. He buscado en la web, pero no pude encontrar tal. Algunos complementos son agradables, pero no exactamente lo que quiero. Por ejemplo, Python Script permite extender Notepad ++ en sí mismo, pero no fuera. Varias otras extensiones 'Ejecutar' permiten que todo el archivo se ejecute en python.

Respuesta

5

Puede customize the editor IPython uses for the edit command y configure IPython para usar Notepad ++. IPython 0.11 crea una carpeta .ipython/profile_default en su carpeta de usuario (en mi caso C:/Users/zk/.ipython/profile_default). Para configurar IPython utilizar Notepad ++ crear .ipython/profile_default/ipython_config.py con lo siguiente:

c = get_config() 
# use DOS style path, C:/PROGRA~2 on my 64-bit system points to C:/Program Files (x86) 
c.TerminalInteractiveShell.editor = 'C:\PROGRA~2\NOTEPA~1\NOTEPA~1.exe' 
# set editor for Qt Console, if you wish to use that 
c.IPythonWidget.editor = 'C:\PROGRA~2\NOTEPA~1\NOTEPA~1.exe' 

A continuación, puede poner en marcha IPython y utilizar el comando edit ejecutar Notepad ++ desde IPython, guardar y cerrar Notepad ++ ejecutará el archivo en IPython.

Si no te importa la instalación PyQt4 y pyzmq (y creo que pygments, al menos por IPython 0.12-dev), Qt console obras de IPython muy bien (francamente el entorno más bonito interactiva se puede obtener de Python). Puede pegar directamente en IPython y ajustará la sangría por usted (cambiando el código rellenado).

+1

¿Esto le permite a uno ejecutar selecciones destacadas de código solamente, en lugar de archivos completos? – joran

+1

Gracias por su respuesta. Intenté eso, pero no resuelve el problema. Sin duda, permite editar algunos códigos en Notepad ++. Por el contrario, ya tengo un montón de código en Notepad ++. Quiero ejecutar selectivamente una cierta parte del archivo fácilmente en la consola de Python sin copiar/pegar manualmente. – xosp7tom

+1

Si usa 'edit', se abrirá un archivo en blanco. Puede pegar código en este archivo, guardar/cerrar, y se ejecutará en IPython. Es un flujo de trabajo ligeramente diferente, pero si le das una oportunidad, puede que te resulte útil. Usar IPython tiene muchas otras ventajas también. – zeekay

Cuestiones relacionadas