Precargando el cuaderno Jupyter con clases / funciones específicas

Me gustaría precargar un cuaderno con clases / funciones específicas que he definido en otro archivo. Más específicamente, me gustaría hacer esto con python (algo así como cargar un perfil, que contiene todas las clases / funciones relevantes). Actualmente, estoy generando notebooks con python y los inicio automáticamente en el servidor. Debido a que los diferentes “perfiles” necesitan estos cuadernos, necesitan diferentes clases y funciones sin importarlos específicamente.

Al generar un bloc de notas jupyter, simplemente copio una “plantilla” de bloc de notas jupyter a un archivo específico y dejo que el usuario la abra automáticamente. ¿Puedo establecer algún tipo de perfil en

"metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3", "profile": "lab_5" // <-- }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.13" } }, 

¿Dónde “lab_5” cargaría las clases necesarias?

Cuando inicie el cuaderno Jupyter (o el laboratorio), si tiene archivos de script de Python en

 location_of_ipython_profile/startup/ 

luego se ejecutarán en cada inicio de IPython (para servir como kernel estándar de ipython). Por ejemplo, en mi máquina tengo un archivo llamado 00-first.py y tiene un contenido simple de la siguiente manera:

 import numpy as np 

Si hay otros scripts, digamos, 50-middle.py y 99-last.py , también se ejecutan consecutivamente.

Cuando abro un nuevo cuaderno Jupyter con kernel ipython. Tendré muchas cosas pre-ejecutadas de acuerdo a esos archivos de script. Para el primer script, 00-first.py , proporciona el símbolo np para usar de inmediato. Entonces, puedo ejecutar print(np.pi) y obtener 3.141592... como salida.

Para obtener el location_of_ipython_profile , uno puede ejecutar el comando magic en el cuaderno Jupyter:

 !ipython locate profile 

En mi caso, obtengo C:\Users\swatc\.ipython\profile_default . Para listar todos los archivos en la carpeta de startup , ejecuto:

 !dir C:\Users\swatc\.ipython\profile_default\startup\*.* 

Recuerde que puede haber varios perfiles de Python en su computadora. Todo lo anterior es válido para el perfil predeterminado.

Espero que esto ayude.