A Jupyter Notebook is an interactive document made up of individual blocks known as cells. Some cells contain source code, while others contain explanatory text, equations, images, or headings.
The output of executed code, such as a table, chart, statistical result, or error message, is displayed directly below the relevant cell. A notebook can therefore bring together a problem or task description, program code, computational results, charts and tables, explanations of the methods used, and conclusions and interpretations of the results in one place.
The notebook itself does not execute program code. This is handled by a separate computational process known as a kernel, which is connected to a specific programming language and environment.
One of their main advantages is the combination of code, results, and commentary. Users can easily see how individual parts of the code relate to the resulting charts and how the presented values were obtained. A notebook can also serve as teaching material. Individual steps can be supplemented with explanations, while users can modify the code directly and observe how the result changes.