在Python 3中设置Jupyter Notebook

介绍

Jupyter Notebook 提供了一个用于作为Web应用程序的交互式计算的命令shell。该工具可以与多种语言一起使用,包括Python,Julia,R,Haskell和Ruby。它通常用于处理数据,统计建模和机器学习。 本教程将引导您设置Jupyter Notebook以在本地或从Ubuntu 16.04服务器运行,以及教您如何连接和使用笔记本。 Jupyter笔记本(或简称笔记本)是由Jupyter Notebook应用程序生成的文档,包含计算机代码和丰富的文本元素(段落,方程,数字,链接等),有助于呈现和共享可再现的研究。 在本指南结束时,您将能够使用运行在本地机器或远程服务器上的Jupyter Notebook运行Python 3代码。

先决条件

要遵循本教程,您将需要一个Python 3编程环境 本教程中的所有命令都应以非root用户身份运行。 如果命令需要root访问权限,则它之前将是 sudo  。  使用Ubuntu 16.04的初始服务器设置 说明如何添加用户并授予其sudo访问权限。

第1步 - 安装Jupyter Notebook

使用以下命令安装Jupyter Notebook:

pip install jupyter

此时Jupyter Notebook被安装到当前的编程环境中。 下一个可选步骤是使用SSH隧道连接Web界面的服务器安装的步骤。

第2步(可选) - 使用SSH隧道连接到服务器安装

如果您在服务器上安装Jupyter Notebook,在本节中,我们将了解如何使用SSH隧道连接到Jupyter Notebook Web界面。由于Jupyter Notebook将在服务器上的特定端口(例如 :8888  ,  :8889 等)上运行,因此通过SSH隧道可以安全地连接到服务器的端口。 接下来的两个小节描述如何创建SSH隧道从1)Mac或Linux和2)Windows。请参阅本地计算机的子部分。

SSH使用Mac或Linux进行隧道传输

如果您使用Mac或Linux,创建SSH隧道的步骤类似于 如何使用Linux或Mac的DigitalOcean Droplet如何使用SSH密钥 指南,除了在 ssh 命令中添加了其他参数。 本小节将概述 ssh 命令成功隧道所需的附加参数。 SSH隧道可以通过在新的本地终端窗口中运行以下SSH命令来完成:
ssh -L 8888:localhost:8888 your_server_username@your_server_ip
ssh 命令打开SSH连接,但 -L 指定本地(客户端)主机上的给定端口将转发到远程端(服务器)上的给定主机和端口。 这意味着服务器上第二个端口号(例如 8888  )上运行的任何内容都将显示在本地计算机的第一个端口号(例如 8888  )上。 可选择将端口 8888 更改为您选择的端口之一,以避免使用已由另一进程使用的端口。 server_username 是您创建的服务器上的用户名(例如 sammy  ),而 your_server_ip 是服务器的IP地址。 例如,对于用户名 sammy 和服务器地址 203.0.113.0  ,命令将是:
ssh -L 8888:localhost:8888 sammy@203.0.113.0
如果在运行 ssh -L 命令后没有显示错误,您可以进入编程环境并运行Jupyter Notebook:
jupyter notebook

您将收到带有URL的输出。从本地计算机上的Web浏览器中,使用以http://localhost:8888开头的URL打开Jupyter Notebook Web界面。 确保包含令牌编号,或者在http://localhost:8888处提示时输入令牌编号字符串。

第3步 - 运行Jupyter Notebook

安装Jupyter Notebook后,您可以在终端中运行它。为此,请执行以下命令:
jupyter notebook
Jupyter Notebook的活动日志将打印到终端。当您运行Jupyter Notebook时,它会在特定的端口号上运行。您运行的第一个笔记本计算机通常在端口 8888 上运行。要检查Jupyter Notebook正在运行的特定端口号,请参阅用于启动它的命令的输出:
Output[I NotebookApp] Serving notebooks from local directory: /home/sammy
[I NotebookApp] 0 active kernels 
[I NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
[I NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
...

如果启动过程中出现如下所示,则默认为在8889端口上运行。

[I 14:31:24.987 NotebookApp] The port 8888 is already in use, trying another port.
Known labextensions:
[I 14:31:25.025 NotebookApp] Running the core application with no additional extensions or settings
[I 14:31:25.028 NotebookApp] 0 active kernels 
[I 14:31:25.028 NotebookApp] The Jupyter Notebook is running at: http://localhost:8889/
[I 14:31:25.028 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

如果您在本地计算机(而不是服务器)上运行Jupyter Notebook,您的默认浏览器应已打开Jupyter Notebook web应用程序。如果没有,或者如果关闭窗口,您可以导航到输出中提供的URL,或导航到localhost :8888进行连接。 每当你想停止Jupyter Notebook进程时,按CTRL+C ,出现提示时键入Y ,然后ENTER确认。 您将收到以下输出:

Output[C 12:32:23.792 NotebookApp] Shutdown confirmed
[I 12:32:23.794 NotebookApp] Shutting down kernels

Jupyter Notebook现在不再运行。

第4步 - 使用Jupyter Notebook

本节讨论使用Jupyter Notebook的基础知识。如果您当前没有运行Jupyter Notebook,请使用 jupyter notebook 命令启动它。 您现在应该使用网络浏览器连接到它。 Jupyter笔记本是非常强大,有很多功能。本节将概述几个基本功能,让您开始使用笔记本。 Jupyter Notebook将显示它运行的目录中的所有文件和文件夹,所以当你在一个项目上工作时,确保从项目目录中启动它。 要创建新的笔记本文件,请从右上角的下拉菜单中选择 新建  >  Python 3  : 创建一个新的Python 3笔记本 这将打开一个笔记本。我们现在可以在单元格中运行Python代码或将单元格更改为markdown。例如,通过从顶部导航栏中单击“  单元格”  >“  单元格类型”  >“  Markdown”  ,将第一个单元格更改为接受Markdown。 我们现在可以使用Markdown写笔记,甚至包括用 LaTeX 写的方程,把它们放在 $$ 符号之间。例如,在将其更改为markdown后,在单元格中键入以下内容:
# Simple Equation

Let us now implement the following equation:
$$ y = x^2$$

where $x = 2$
要将markdown转换为富文本格式,请按 CTRL+ENTER  ,以下应为结果: 结果的降价 您可以使用markdown单元格来记录和记录您的代码。让我们实现那个简单的方程并打印结果。单击顶部单元格,然后按 ALT+ENTER 在其下添加一个单元格。在新单元格中输入以下代码。
x = 2
y = x**2
print(y)
要运行代码,请按 CTRL+ENTER  。您将收到以下结果: 简单方程结果 您现在可以导入 模块 并使用笔记本电脑,就像使用任何其他Python开发环境一样!

猜你喜欢

转载自blog.csdn.net/youzhouliu/article/details/80461813