es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo acceder al JSON de un cuaderno de Jupyter (no guardado) desde el interior del mismo?

¿Cómo se puede acceder programáticamente al contenido (JSON) de un cuaderno de Jupyter (es decir, lo que se guardaría en un archivo .ipynb) desde el propio cuaderno?

Existe la opción de forzar el guardado del cuaderno y luego leer de nuevo el archivo .ipynb, pero prefiero no sobrescribir el archivo .ipynb actual. Quizás haya una forma de al menos guardarlo en otro directorio. Eso no sería ideal, pero funcionaría.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para acceder al contenido JSON de un cuaderno Jupyter de forma programática desde dentro del cuaderno, se puede utilizar el módulo nbformat. Primero, se puede cargar el cuaderno actual utilizando la función get_ipython() y accediendo al atributo notebook. Una vez cargado, el contenido del cuaderno se puede acceder como un objeto JSON utilizando la función write del módulo nbformat.

    import nbformat
    from nbformat import read, write
    
    # Cargar el cuaderno actual
    notebook_json = get_ipython().notebook
    
    # Acceder al contenido JSON utilizando el módulo nbformat
    notebook_contents = read(notebook_json.notebook_name, as_version=nbformat.NO_CONVERT)
    
    # Acceder a contenidos específicos del cuaderno
    cell = notebook_contents['cells'][0]
    

    Esto permite acceder y manipular el contenido JSON del cuaderno de forma programática sin necesidad de guardar y leer desde un archivo .ipynb.

Comments are closed.