什么是Jupyter Notebook?

简介

Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。

简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。

组成部分

1,网页应用

网页应用即基于网页形式的、结合了编写说明文档、数学公式、交互计算和其他富媒体形式的工具。简言之,网页应用是可以实现各种功能的工具。

2,文档

即Jupyter Notebook中所有交互计算、编写说明文档、数学公式、图片以及其他富媒体形式的输入和输出,都是以文档的形式体现的。

Jupyter Notebook的主要特点

编程时具有语法高亮、缩进、tab补全的功能。

可直接通过浏览器运行代码,同时在代码块下方展示运行结果。

对代码编写说明文档或语句时,支持Markdown语法。

如何安装Jupyter Notebook?

Jupyter Notebook原来也叫iPython Notebook,顾名思义,它和Python关系紧密。如果要在PC上安装笔记本,首先你要确保自己已经安装了Python(2.7/3.3或更高),这是必备条件。

1,Anaconda

官方在文档中强烈建议新用户用Anaconda打包安装Python和Anaconda——所谓懒人方法,小白必备。其实除了提到的两个工具,Anaconda还包含数据科学和机器学习中经常需要用到的各种软件包,只需下载、解压、安装,所有工具就都一步到位了。

安装好后检查有没有加下面的环境变量:

2,pip

如果你很欣赏自己,或者因为某些因素就是不想用Anaconda,你也可以用pip。当然首先,你得确保自己的机器上有pip的最新版本。

#Linux和OSX

pip install-U pip setuptools#Windows

python-m pip install -U pip setuptools

然后,安装Jupyter Notebook:#Python2用户看这里

pip install jupyter#Python3用户不要跑

pip3 install jupyter

运行Jupyter Notebook

帮助

如果你有任何jupyter notebook命令的疑问,可以考虑查看官方帮助文档,命令如下:

jupyter notebook --help#或

jupyter notebook -h

启动

默认端口启动

在终端中输入以下命令:

jupyter notebook

执行命令之后,在终端中将会显示一系列notebook的服务器信息,同时浏览器将会自动启动Jupyter Notebook。

启动过程中终端显示内容如下:

$ jupyter notebook

[I21:58:24.417 NotebookApp] Serving notebooks from local directory: /Users/catherine

[I21:58:24.417NotebookApp] 0 active kernels

[I21:58:24.417 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/[I21:58:24.417 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

注意:之后在Jupyter Notebook的所有操作,都请保持终端不要关闭,因为一旦关闭终端,就会断开与本地服务器的链接,你将无法在Jupyter Notebook中进行其他操作啦。

浏览器地址栏中默认地将会显示:http://localhost:8888。其中,“localhost”指的是本机,“8888”则是端口号。

如果你同时启动了多个Jupyter Notebook,由于默认端口“8888”被占用,因此地址栏中的数字将从“8888”起,每多启动一个Jupyter Notebook数字就加1,如“8889”、“8890”……

指定端口启动

如果你想自定义端口号来启动Jupyter Notebook,可以在终端中输入以下命令:

jupyter notebook --port

其中,“”是自定义端口号,直接以数字的形式写在命令当中,数字两边不加尖括号“<>”。如:jupyter notebook --port 9999,即在端口号为“9999”的服务器启动Jupyter Notebook。

启动服务器但不打开浏览器

如果你只是想启动Jupyter Notebook的服务器但不打算立刻进入到主页面,那么就无需立刻启动浏览器。在终端中输入:

jupyter notebook --no-browser

此时,将会在终端显示启动的服务器信息,并在服务器启动之后,显示出打开浏览器页面的链接。当你需要启动浏览器页面时,只需要复制链接,并粘贴在浏览器的地址栏中,轻按回车变转到了你的Jupyter Notebook页面。

例图中由于在完成上面内容时我同时启动了多个Jupyter Notebook,因此显示我的“8888”端口号被占用,最终分配给我的是“8889”。

用法

如果你想新建一个笔记本,单击面板右侧的“New”,它会跳出4个选项:

Python 3

Text File

Folder

Terminal

选择Text File后,你会得到一个空白的页面。它相当于一个文本编辑器(类似于Ubuntu上的应用程序),你可以在上面输入任何字母、单词和数字,所以选择好编程语言后,你是可以在上面写脚本的。此外,它还提供查找和替换文件中的单词的功能。

选择Folder后,你其实是在编辑文件夹列表。你可以创建一个新文件夹,把所需文档放进里面,或者修改它的名称、直接把它删除。

而Terminal的工作方式和Mac、Linux计算机上的Terminal一样,都是在Web浏览器中创建终端支持。只需在终端输入Python,一个Python脚本就写好了。

导入最常见的Python库来启动笔记本,如pandas和numpy。在代码上方的菜单中,那些图标依次表示添加、编辑、剪切、向上移动cell、向下移动cell、运行代码、停止运行和撤销。

这个下拉的列表提供了四个选项:

Code:这个不言自明,就是你写代码的地方;

Markdown:非常常见的轻量级标记语言,用来为代码添加注释和结论;

Raw NBConvert:一个命令行工具,可以把你的笔记本转换成另一种格式,如HTML;

Heading:添加标题,使你的文档看起来更干净整洁,它现在已经变成Markdown里的一个语法,用两个#表示。

快捷键

向上插入一个cell:a

向下插入一个cell:b

删除cell:x

将code切换成markdown:m

将markdown切换成code:y

运行cell:shift+enter

查看帮助文档:shift+tab

自动提示:tab

魔法指令

作为iPython的继承者,开发人员已经在Jupyter Notebook中加入预定义的魔术命令(magic function)。这是一种增加便捷性和互动性的工具,如果要查看命令列表,你可以输入(注:通常不需要“%”):

%lsmagic

当看到那一串函数列表时,也许你能从中认出几张老面孔,如%clear、%autosave、%debug和%mkdir。只要你以前写过代码,这些函数就几乎是不可避免的。

在Jupyter Notebook中,魔术命令有两种运行方式,一是Line-wise,而是Cell-wise。顾名思义,Line-wise就是当你想执行一个命令行的时候需要用到的,而Cell-wise面向的就不单单是一行了,它作用的是整个cell的代码块。

为了区分两种运行方式,如果是Line-wise,所有命令必须以%字符打头;如果是Cell-wise,则用%%。

Line-wise:

%time a = range(10)

Cell-wise:

%%timeit a = range (10)

min(a)

运行外部python源文件:%run xxx.py

计算statement的运行时间:%time statement

计算statement的平均运行时间:%timeit statement

测试多行代码的平均运行时间:

%%timeit

statement1

statement2

statement3

jupyter notebook和python有什么区别_Python神器 Jupyter Notebook相关推荐

  1. jupyter notebook和python有什么区别_Jupyter Notebook 有哪些奇技淫巧?

    Towards Data Science专栏的作者Parul Pandey总结了七大Jupyter的进阶用法: 一.执行shell命令 Shell是一种与计算机进行文本交互的方式. 一般来讲,当你正在 ...

  2. jupyter notebook和python有什么区别_如何在Jupyter Notebook中使用Python虚拟环境?

    如何在使用Jupyter Notebook时,解决Python虚拟环境间的切换问题?本文一步步帮你拆解.希望你能够避免踩坑的痛苦,把更多的时间花在愉快的编程上. 痛点 Python目前有两个主版本并存 ...

  3. Jupyter lab add kernel Python+Julia+R 【jupyter Notebook 切换Python环境】and【在jupyter Notebook中安装第三方库】

    新增虚拟环境 conda create -n py2 python=2.7 进入python2的环境 conda activate py2 安装python2的内核并应用 python2 -m pip ...

  4. python import from区别_python import 与 from .... import ...区别-阿里云开发者社区

    在python用import或者from...import来导入相应的模块. 模块其实就一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候, 直接把相应的模块导入到我们的程序 ...

  5. python install pip 区别_python conda、pip区别,python 下 faiss 安装

    在安装一些python的安装包时,我们会使用conda install ~或者pip install ~ 网上说conda是安装到云端,而pip是安装到本地,那二者究竟有什么区别,可以参考下这个点击打 ...

  6. python格式化输出区别_python格式化输出的区别

    python对于数的输出包括%d和%f,下面来详细介绍python对数的输出. (1)输出整型 a=55 print("%d"%a) #直接输出整数a print("%4 ...

  7. python编辑器和python解释器的区别_python编译器和解释器的区别

    高级语言不能直接被机器所理解执行,所以都需要一个翻译的阶段,解释型语言用到的是解释器,编译型语言用到的是编译器. 编译型语言通常的执行过程是:源代码--预处理器--编译器--目标代码--链接器--可执 ...

  8. python filter map区别_Python:map()、reduce()、filter()的区别

    一)reduce()的用法:把一个函数作用在一个序列上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算 #注意:累积计算而不是加法运算,而是序列中后面的元素与前面的元素做 ...

  9. python import from区别_python中import与from方法总结(推荐)

    一.模块&包简介 模块:所谓模块就是一个.py文件,用来存放变量,方法的文件,便于在其他python文件中导入(通过import或from). 包(package): 包是更大的组织单位,用来 ...

  10. python全栈区别_Python全栈之路-4-list与tuple

    本文代码地址​github.com Python中可以通过组合一些元素得到多种复合数据类型,其中最常用的是list,可以通过方括号,逗号分割一组元素得到. list可以包含不同类型的元素,但通常使用时 ...

最新文章

  1. 我问占小狼到底什么是面向对象编程?他转头就走。
  2. 学习python需要什么基础-自学python需要什么基础,要掌握哪些知识?
  3. 关于质量标准化的思考和实践
  4. 畅通您的iOS开发之路
  5. centos 搭建php运行环境
  6. reduce python3_python3中reduce函数的使用
  7. Spring事务管理(注解式声明事务管理)备忘
  8. ORACLE(Linux版本)实时同步数据到MYSQL(Linux版本)解决方案:OGG
  9. php可视化网页制作软件,PHPRunner(PHP网页制作)官方版
  10. JavaScript 学习手册二:JS 数据类型
  11. 电驴搜索服务器正在连接,电驴连接不上服务器怎么解决?
  12. 车载T- BOX全国产化电子元件推荐方案
  13. 解决ImportError: /lib64/libm.so.6: version `GLIBC_2.23‘ not found (required by /root/anaconda3/lib/pyt
  14. 朱松纯:初探计算机视觉三个源头兼谈人工智能
  15. 阿里云科技驱动“数字化转型”,助力中小企业发展“突围”
  16. win10亮度调节消失的解决方法
  17. WSN(1):第一章  绪论
  18. android+5.0相机界面,新系统绝配!安卓5.0手动相机App体验
  19. 业余LaTeX学习笔记(一)-引言
  20. Scott Hanselman的2006 Windows最终开发者和高级用户工具列表

热门文章

  1. [已解决]安装MPICH2(x64)时显示需要安装NET FRAMEWORK 2.0.50727
  2. 计算机网络系统什么组成,计算机网络系统是由什么组成的
  3. 【Docker 01】Docker简介与基于Docker构建第一个Spring Boot应用
  4. anaconda中更改python版本
  5. matlab 程序改写为 python 程序的方法
  6. java窗口设计_JAVA界面设计
  7. linux 命令备份数据库,linux备份数据库命令
  8. 星光商务2008辉煌版 单机版 bt
  9. 数电课设—四位数字电子钟设计
  10. Java 程序开发设计文档