Python教程:Jupyter Notebook入门

Jupyter Notebooks使您可以将代码,注释,多媒体和可视化组合到一个交互式文档中,该文档可以共享,重复使用和重新处理。

Jupyter Notebook最初是为用Python,R和Julia编写的数据科学应用程序而开发的,它以各种方式对各种项目都有用。 您可以使用Jupyter Notebook与第三方共享Python代码及其输出,通过实时交互反馈运行代码,或者系统地跟踪和记录工作进度。

[InfoWorld的要点: 开始使用Anaconda,这是数据科学的Python发行版 Python的Anaconda发行版中的新增功能 5个用于数据科学的基本Python工具-现已改进 | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]

在本文中,我们将逐步设置针对Python的Jupyter Notebook,使用Jupyter的各种功能,并与其他人共享结果,无论他们是否安装了Jupyter。

Jupyter Notebook安装和设置

创建和使用Jupyter Notebook for Python的最简单方法是设置 Python 的Anaconda发行版的实例 Anaconda的创建是为了使其易于使用Python及其庞大的数据科学工具,并且包括Jupyter Notebook软件作为标准发行版。

除了使Jupyter Notebooks易于启动和使用之外,Anaconda默认还提供您可能会与Jupyter结合使用的许多其他软件包:Pandas,NumPy,TensorFlow,Matplotlib等。 Anaconda还使您更轻松地完成日常工作,例如管理虚拟环境,使Python软件包保持最新状态,以及为您正在使用的所有内容找到良好的文档。

使用Anaconda的一个潜在缺点:如果您已经建立了庞大的Python工作流程,则必须将工作迁移到新的Anaconda实例。 如果您不习惯使用原始设置,从长远来看,这是更好的选择。 但是,如果您需要坚持使用现有的环境,则需要手动安装Jupyter Notebook软件包。

jupyter 00 IDG

Python的Anaconda发行版预装了Jupyter Notebook。 运行它就像单击图标一样简单。

好消息是手动Jupyter Notebook设置也很容易。 使用pip将Jupyter添加到Python安装中:

pip install jupyter

如果您使用的是Anaconda,则“ Anaconda”主导航器界面的“主页”面板中有Jupyter Notebook界面的启动器。 单击它以启动Jupyter服务器的实例,系统的默认Web浏览器将启动以访问它。

如果您已通过pip手动安装了Jupyter,则可以通过在命令行中键入jupyter notebook来启动它。 请注意,如果您在Python虚拟环境中使用Jupyter(如果您不使用Anaconda,则是个好主意),则需要在运行该命令之前**该环境。

Jupyter Notebook基础知识

首次启动Jupyter时,您会看到一个文件浏览器,通常用于当前用户主目录中的文件。 您可以使用此浏览器导航到现有笔记本,或使用文件列表右上方的“新建”下拉菜单启动新笔记本。 选择“新建/笔记本:Python 3”以执行此操作。

jupyter 02 IDG

Jupyter的文件浏览器。 标有绿色图标的笔记本电脑已经启动并正在运行。

Jupyter Notebook具有两个基本组件:内核和单元。

  • 内核笔记本中使用的编程语言的运行时的运行时实例。 在我们的例子中,Jupyter是一个正在运行的Python实例(即IPython内核),具有自己的名称空间和内存分配。 笔记本一次只能连接一个内核,但是如果需要,可以在多个内核之间切换。
  • 单元格类似于电子表格中的单元格。 每个单元格包含代码,自由格式的文本或其他内容。

您可以在任何单元中开始运行代码,并且可以单独运行每个单元(甚至无序运行!)。 您可以从给定点向前运行单元,也可以从顶部开始运行,并以干净的方式运行所有内容。 对单元格进行评估时,将对它们进行编号以指示其评估顺序。 除非您另外特别告知Jupyter,否则笔记本中使用的代码的状态(其全局变量等)将保留。 可以通过工具栏图标来剪切,复制,粘贴和重新排列单元格。

jupyter 01 IDG

Jupyter笔记本的简单示例。 在底部看到的图形是由In [9]:标记为部分的代码生成的。

笔记本中最常用的命令可在下拉菜单或单元格区域上方的可单击工具栏中找到。 探索所有可用内容的一种好方法是单击工具栏中的键盘图标。 这将打开命令面板,您可以在其中简单地键入命令来召唤许多命令。

jupyter 04 IDG

Jupyter Notebook命令面板。 键入以搜索任何可用的命令。

摆脱笔记本工作困扰的一种好方法是与现有笔记本一起玩。 Jupyter的创建者策划了一个涵盖了广泛应用程序的笔记本画廊 ,并且还展示了笔记本中常用功能的许多示例,例如,绘制图形或从数据生成视觉效果。

Jupyter Notebook单元格格式

单元格可以包含四种内容:

  • Python代码。 任何一个单元格可以包含的代码量没有实际限制,但是出于理解的考虑,最好将较长的代码段分成单独的块。 您无需剪切和粘贴:您可以通过按Ctrl + Shift + -来拆分笔记本单元格。
  • 降价。 将Markdown格式的文本用于批注,注释,嵌入式图像以及不是可执行代码的其他元素。 Markdown单元甚至可以包含附加图像,这些图像随笔记本一起保存。 使用笔记本的“编辑| 插入图片”菜单选项以添加图片。
  • 标题。 传统Jupyter笔记本使用特殊的“标题”单元格将笔记本划分为多个部分。 新笔记本不再使用此功能。 请改用Markdown标题。
  • 原始NBConvert。 标有“ Raw NBConvert”的单元格保持原样,Jupyter不会对其进行处理或转换。 如果要插入需要由第三方加载项处理的文本(例如用于数学公式的LaTex),这将很有用。

带有Python代码的单元格可以加%%%前缀以创建魔术命令 魔术命令特定于Jupyter中运行的Python内核,通常控制内核与笔记本电脑和周围系统的接口。

jupyter 03 IDG

Jupyter Notebook中的不同种类的细胞。 从顶部开始:Markdown格式的单元格,Python代码单元格和原始的NBConvert单元格。

运行Jupyter笔记本

Jupyter Notebook中的代码可以一次全部运行,也可以增量运行。 当代码单元格处于焦点位置时,单击笔记本计算机命令栏中的“运行”按钮以执行当前单元格的内容并前进到下一个单元格。 该过程类似于使用调试器“单步执行”正在运行的程序,除了在这里您一次只需要一个单元而不是每次只需要一行代码

请注意,只要您运行一个或多个单元,只要它们处于活动状态,这些单元的状态就会被内核保留。 例如,如果您import一个模块,则该模块将保持加载在内核中,因此任何将来的import语句都将像常规Python脚本中该import语句的第二个实例一样起作用。

如果要重新启动内核并重置笔记本的上下文,但要保留到目前为止在笔记本中显示的结果,请单击“重新启动”按钮(循环箭头图标)。 如果要使用新启动的内核从顶部运行整个笔记本,要擦除笔记本中显示的所有先前结果,请单击双箭头“运行”按钮。

如果要向Jupyter Notebook添加更多的交互性,一种方法是使用ipywidgets附加组件。 使用ipywidgets ,单元格可以生成基本的GUI控件,例如滑块或输入框。 用户从这些控件提供的值可以在笔记本计算机的其他单元格中使用。

jupyter 05 IDG

可以通过ipywidgets库将交互式控件插入到笔记本中。

保存和加载Jupyter笔记本

Jupyter笔记本可以保存和恢复以备将来使用。 保存Jupyter笔记本时,将保存每个单元格的文本内容以及上次运行时每个单元格的输出。

但是, 不会保存用于运行笔记本的内核状态(运行笔记本时创建的变量和数据结构的状态)。 通过使用Python中的第三方dill模块可以保存和恢复内核状态,但是Jupyter不直接支持保存内核状态。

Jupyter Notebook还提供了一种用于还原最近一组更改的简单机制。 保存笔记本时,将从上一个保存的副本中创建一个“检查点”,然后可以通过选择“文件|复制”来恢复到该检查点。 恢复到检查点。” 对于更复杂的内容,请在存放笔记本的目录上使用实​​际的版本控制系统,例如Git

From: https://www.infoworld.com/article/3336511/python-tutorial-get-started-with-jupyter-notebook.html

版权声明:本文为cxq8989原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cxq8989/article/details/106195263

智能推荐

python notebook安装及入门使用教程

python notebook安装及入门使用教程 1. 安装教程 执行jupyter notebook命令即可在浏览器中使用notebook.截图如下所示: jupyter notebook代码自动补全配置可参考这里 jupyter notebook 的美化配置可参考【这里】 2. 使用教程 点击 new -> python3 进行新建文件 具体操作如图所示: 运行结果如图所示:...

数据科学工具 Jupyter Notebook 教程 in Python

简单介绍 Jupyter 是一个笔记本,这个笔记本可以编写和执行代码,分析数据,嵌入内容,以及共享可重复性的工作。Jupyter Notebook (以前成为iPython Notebook)可以在一个简单的笔记本中轻松分享代码,数据,图标以及说明。发布格式也比较灵活:PDF, HTML,ipynb,dsahboards,slides,等等。代码单元是基于输入和输出格式。例如: 安装 有多种方式可...

python Jupyter Notebook

参考Link: (1)Jupyter Notebook介绍、安装及使用教程 https://www.jianshu.com/p/91365f343585 (2)Jupyter Notebook 快速入门 https://www.cnblogs.com/nxld/p/6566380.html 安装 ① 安装前提 安装Jupyter Notebook的前提是需要安装了Python(3.3版本及以上,或...

冒泡排序,及改进方式,性能优化400%>>>附图解加源码

首先源码附上,源码中带有注释,看不懂没关系,源码后面附带图解,最后附上代码效率提升图 源码如下: 方案一:其实实现很简单,两层循环,每次内层迭代出最大的一个值,将其放入数组最后一个位置,外层循环的末端便往前移一位。其原理如下图 方案一代码块: 方案二:优化改进 仔细观察上面的图,我们不难发现当迭代到图下这样的情况时,其实已经全排序好了,但是我们还是需要对它进行1,2,3,4,5,6的迭代,这些情况...

css3常用选择器

先介绍一下基本选择器,如下几种 *:通配符。选择页面的所有元素 E:元素选择器。对页面的一些元素进行选择,如p,div,li等 .class:类选择器 #id:id选择器。一个Id在一个页面中只能选择,这是和类选择器的区别 E F:后代选择器。如ul li。选中ul下的li E>F:子元素选择器。如下,可以用 h1 > strong {color:red;}使h1的子元素strong变...

猜你喜欢

python is not set from command line or npm configuration

问题 猜测原因  python版本冲突 解决方案  去官网找到最新版本python 点击下载,注意记住你下载的目录,下载好以后,打开这个目录下的文件夹,Python310, 整个文件夹复制一下 在项目里运行npm config list --json 找到python的路径   我的是 C:\\Python27\\python.exe 说明项目里用的还是py...

Java8 Stream流操作

前言 我们常常需要将一个容器转化成另一个容器,或是对这个容器中的数据进行批量处理,这时使用Stream流可以大大减少我们的工作量。 1 Stream概述 Java 8 是一个非常成功的版本,这个版本新增的Stream,配合同版本出现的 Lambda ,给我们操作集合(Collection)提供了极大的便利。 那么什么是Stream? Stream将要处理的元素集合看作一种流,在流的过程中,借助St...

带你玩转Visual Studio——带你跳出坑爹的Runtime Library坑

在Windows下进行C++的开发,不可避免的要与Windows的底层库进行交互,然而VS下的一项设置MT、MTd、MD和MDd却经常让人搞迷糊,相信不少人都被他坑过,特别是你工程使用了很多第三库的时候,及容易出现各种链接问题。看一下下面这个错误提示:  LIBCMT.lib(_file.obj) : error LNK2005: ___initstdio already defined...

git 设置 gitignore 忽略 __pycache__

清除git缓存中的pycache 直接删掉硬盘上的文件 如果我想保留硬盘上的这个文件,而只删除版本管理中的文件,就需要加入--cached参数。 切换分支出现问题 尽管我已经删除了__pycache__,硬盘也没有了,但是切换分支的时候依然是会提示本地重写的情况。 提示:需要我在切换分支之前,提交一次更新。 提交了更新之后,再来尝试切换分支,如下: 成功了,说明当做了任何变更之后,切换分支前需要执...

人生苦短,我用Python(二)— 爬取会议网站 EasyChair Smart CFP

寒假留校帮学长写了个爬虫,抓取会议网站上一些CFP信息。想着把一些知识点、坑点记下来,一来做个小总结给工作收收尾,二是以后再遇到好从容应对。 这是我写的第二个比较完善的爬虫了,比第一个要简单许多,完全过程化的代码,而且easychair这个网站页面布局比较友好,适合python新手、前端小白入门练习。但这个网站反爬比较厉害,写爬虫的过程中就被ban了好几次…… 制定抓取...