Importar módulos automáticamente al ingresar al intérprete de Python o Ipython

Resuelto user545424 asked hace 12 años • 9 respuestas

Me encuentro escribiendo import numpy as npcasi cada vez que enciendo el intérprete de Python. ¿Cómo configuro el intérprete de Python o ipython para que numpy se importe automáticamente?

user545424 avatar Jun 21 '12 00:06 user545424
Aceptado

Para ipython, hay dos formas de lograrlo. Ambos involucran el directorio de configuración de ipython que se encuentra en ~/.ipython.

  1. Cree un perfil de ipython personalizado.
  2. O puede agregar un archivo de inicio a~/.ipython/profile_default/startup/

Para simplificar, usaría la opción 2. Todo lo que tienes que hacer es colocar un archivo .pyo .ipyen el ~/.ipython/profile_default/startupdirectorio y se ejecutará automáticamente. Por lo tanto, podría simplemente colocarlo import numpy as npen un archivo simple y tendrá np en el espacio de nombres de su indicador de ipython.

La opción 2 en realidad funcionará con un perfil personalizado, pero el uso de un perfil personalizado le permitirá cambiar los requisitos de inicio y otras configuraciones según un caso particular. Sin embargo, si siempre desea npestar disponible para usted, colóquelo en el directorio de inicio.

Para obtener más información sobre la configuración de ipython. Los documentos tienen una explicación mucho más completa.

ravenac95 avatar Jun 20 '2012 17:06 ravenac95

Utilice la variable de entorno PYTHONSTARTUP . De la documentación oficial:

Si este es el nombre de un archivo legible, los comandos de Python en ese archivo se ejecutan antes de que se muestre el primer mensaje en modo interactivo. El archivo se ejecuta en el mismo espacio de nombres donde se ejecutan los comandos interactivos para que los objetos definidos o importados en él puedan usarse sin calificación en la sesión interactiva.

Entonces, simplemente cree una secuencia de comandos de Python con la declaración de importación y apunte la variable de entorno hacia ella. Dicho esto, recuerde que "lo explícito siempre es mejor que lo implícito", así que no confíe en este comportamiento para los guiones de producción.

Para Ipython, consulte este tutorial sobre cómo crear un archivo ipython_config

Dhara avatar Jun 20 '2012 17:06 Dhara

Yo uso un archivo ~/.startup.py como este:

# Ned's .startup.py file
print("(.startup.py)")
import datetime, os, pprint, re, sys, time
print("(imported datetime, os, pprint, re, sys, time)")

pp = pprint.pprint

Luego defina PYTHONSTARTUP=~/.startup.py, y Python lo usará al iniciar un shell.

Las declaraciones de impresión están ahí, por lo que cuando inicio el shell, recibo un recordatorio de que está vigente y de lo que ya se ha importado. El ppatajo también es muy útil...

Ned Batchelder avatar Jun 20 '2012 17:06 Ned Batchelder