¿Cuál es la diferencia entre Jupyter Notebook y JupyterLab?
Soy nuevo en Jupyter Notebook, ¿cuál es la diferencia clave entre Jupyter Notebook y JupyterLab? Sugiérame elegir el mejor, que debería usarse en el futuro.
Jupyter Notebook es un entorno computacional interactivo basado en web para crear documentos de Jupyter Notebook. Admite varios lenguajes como Python (IPython), Julia, R, etc. y se utiliza principalmente para análisis de datos, visualización de datos y computación exploratoria interactiva adicional.
JupyterLab es la interfaz de usuario de próxima generación que incluye portátiles . Tiene una estructura modular, donde puedes abrir varios cuadernos o archivos (por ejemplo, HTML, Texto, Markdowns, etc.) como pestañas en la misma ventana. Ofrece una experiencia más parecida a la de un IDE.
Para un principiante, sugeriría comenzar con Jupyter Notebook, ya que solo consta de un explorador de archivos y una vista de editor (de cuaderno). Quizás sea más fácil de usar. Si desea más funciones, cambie a JupyterLab. JupyterLab ofrece muchas más funciones y una interfaz mejorada, que se puede ampliar mediante extensiones: JupyterLab Extensions (GitHub)
1 - Para responder directamente a tu pregunta:
La diferencia más importante entre los dos es que debe comenzar a usar JupyterLab de inmediato y que no debe preocuparse en absoluto por Jupyter Notebook. Porque :
JupyterLab eventualmente reemplazará al clásico Jupyter Notebook. A lo largo de esta transición, tanto el Notebook clásico como JupyterLab admitirán el mismo formato de documento de notebook.
A partir de la versión 3.0, JupyterLab también viene con un depurador visual que le permite establecer puntos de interrupción de forma interactiva, acceder a funciones e inspeccionar variables.
2 - Para contradecir las numerosas afirmaciones en los comentarios de que la trama no funciona bien con JLab:
JupyterLab es una herramienta absolutamente fantástica tanto para crear figuras argumentales como para iniciar aplicaciones Dash completas , tanto en línea, como pestaña, como externamente en un navegador.
3 - Y probablemente también te gustaría saber esto:
Otras publicaciones han sugerido que Jupyter Notebook (JN) podría ser más fácil de usar que JupyterLab (JL) para principiantes. Pero tendría que estar en desacuerdo.
Una gran ventaja de JL , y posiblemente una de las diferencias más importantes entre JL y JN, es que puedes ejecutar más fácilmente una sola línea e incluso texto resaltado . Prefiero usar un atajo de teclado para esto, y asignar atajos es bastante sencillo.
Y el hecho de que puedas ejecutar código en una consola Python hace que trabajar con JL sea mucho más divertido. Otras respuestas ya han mencionado esto, pero JL puede considerarse de alguna manera una herramienta para ejecutar Notebooks y más . Entonces, la forma en que uso JupyterLab es configurándolo con un archivo .ipynb, un explorador de archivos y una consola de Python como esta:
Y ahora tienes estas herramientas a tu disposición:
- Ver archivos, ejecutar kernels, comandos, herramientas de Notebook, abrir pestañas o administrador de extensiones
- Ejecutar celdas usando, entre otras opciones,
Ctrl+Enter
- Ejecute una sola expresión, línea o texto resaltado usando opciones de menú o atajos de teclado
- Ejecute el código directamente en una consola usando
Shift+Enter
- Inspeccione variables, marcos de datos o gráficos de forma rápida y sencilla en una consola sin saturar la salida de su computadora portátil.
En este momento (mediados de 2019), con el lanzamiento de JupyterLab 1.0, como usuario, creo que deberíamos adoptar JupyterLab para el uso diario. Y de la documentación oficial de JupyterLab :
La versión actual de JupyterLab es adecuada para el uso diario general.
y
JupyterLab eventualmente reemplazará al clásico Jupyter Notebook. A lo largo de esta transición, tanto el Notebook clásico como JupyterLab admitirán el mismo formato de documento de notebook .
Tenga en cuenta que JupyterLab tiene una arquitectura modular extensible . Entonces, en los viejos tiempos, solo había un Jupyter Notebook, y ahora con JupyterLab (y en el futuro), Notebook es solo una de las aplicaciones principales de JupyterLab (junto con otras como la Consola de código , la Terminal de línea de comandos y un Text Editor ).
( Estoy usando JupyterLab con Julia )
Lo primero es que el laboratorio Jupyter de mi uso anterior ofrece más "temas", lo cual es excelente a la vista, y también cambios en el tamaño de fuente independientemente del navegador, lo que lo acerca más al de un IDE. Hay algunos detalles que me gustan, como cambiar el 'tamaño de fuente del código' y dejar el mismo tamaño de fuente de la interfaz.
Las principales características que son geniales son
- Arrastrar y soltar celdas para que puedas reorganizar fácilmente el código.
- colapsar celdas con un solo clic del mouse y una pequeña marca para recordar su ubicación
Sin embargo, lo más importante es la posibilidad de tener vistas divididas de las pestañas y del terminal. Si usa Emacs, entonces probablemente le haya gustado tener múltiples buffers con arreglos horizontales y verticales, uno de ellos ejecutando un shell (terminal), y con jupyterlab esto se puede hacer, y el arreglo se hace con arrastrar y soltar, lo que en Emacs suele ser hecho con conjuntos de comandos.
( No creo que haya una curva de aprendizaje agregada para aquellos que no han usado primero la versión original 'notebook'. Puedes sumergirte directamente en esta experiencia IDE )