欢迎访问我的网站,希望内容对您有用,感兴趣的可以加入我们的社群。

Jupyter Notebook的基本使用

Python基础 迷途小书童 4年前 (2020-10-28) 4313次浏览 0个评论

软硬件环境

  • windows 10 64bits
  • anaconda with python 3.7
  • jupyter notebook

视频看这里

此处是 youtube 的播放链接,需要科学上网。喜欢我的视频,请记得订阅我的频道,打开旁边的小铃铛,点赞并分享,感谢您的支持。

前言

Jupyter Notebook 是一款开源的 Web 应用程序,用户可以直接在网页中进行代码编写、文档编写和代码执行,代码的运行结果也会在代码块下方显示出来。目前已经支持超过40种编程语言,包括 PythonRJuliaScala 等。它具有以下优势:

  • 分享笔记本

    可以使用电子邮件、DropboxGitHubJupyter Notebook Viewer与他人共享

  • 交互式输出

    代码可以生成丰富的交互式输出,包括HTML、图像、视频、LaTeX

  • 大数据整合

    通过PythonRScala编程语言使用Apache Spark等大数据框架工具。支持使用pandasscikit-learnggplot2TensorFlow等同时使用一份数据

安装

本人一直以来都是使用 anaconda 工具包,因为它不仅包含 python 的环境,还包括了很多常用的科学计算包及其依赖库,非常方便懒人使用。幸运的是 jupyter notebook 也在其中,这样我们就可以直接开箱即用了。至于 anaconda 的安装及使用,可以参考之前的文章 https://xugaoxiang.com/2019/12/08/anaconda/

如果没有使用 anaconda 的环境,可以通过 pip 进行安装,也很简单,命令是

pip install jupyter

jupyter notebook基本使用

打开 jupyter notebook,在 cmd 或者 powershell 中输入 jupyter-notebook.exe

应用启动后,本质上是在后台跑一个 web 服务

jupyter notebook

执行上面命令之后,jupyter notebook 将在你的默认浏览器中打开,网址为:http://localhost:8888/tree,这就是 jupyter notebook 的前端工作台

jupyter notebook

点击 New,选择 Python3

jupyter notebook

新建的 ipynb 页面

jupyter notebook

在单元格中输入代码,点击上方的运行按钮,就可以得到代码执行的结果

jupyter notebook

常用快捷键

在没有活动单元格时的常见快捷键:

  • A键

    将在选中单元格上方插入新单元格

  • B键

    将在选中单元格下方插入一个单元格

  • D键

    连续按两次D键,删除单元格

  • Z键

    撤消操作

  • Y键

    将当前的选中单元格变成代码单元格

  • Shift+上/下

    可以选择多个单元格

  • Shift+M

    合并选中的单元格

  • F键

    弹出查找和替换菜单

处于编辑模式时的快捷键

  • Ctrl+Home

    跳转到单元格的开头

  • Ctrl+End

    跳转到单元格的末尾

  • Ctrl+S

    保存你的工作

  • Ctr+Enter

    运行整个单元格

  • Alt+Enter

    不仅会运行单元格,还会在下方添加一个新的单元格

  • Ctrl+Shift+F

    打开命令选项板

虚拟环境切换

在使用 anaconda 过程中,一般我们会创建不同的虚拟环境,但是默认情况下,jupyter notebook 并不支持这些虚拟环境。幸好,conda 提供了相应的工具包,可以帮助我们解决这个问题

conda install nb_conda

安装好后,重新打开 jupyter notebook,工作台界面就变成下面这个样子了

jupyter notebook

在新建 ipynb 的时候,可以看到 conda 的虚拟环境

jupyter notebook

这里有个问题,在我们点击 conda 时,会报错

jupyter notebook

这时候需要修改文件 C:\Tools\anaconda3\pkgs\nb_conda-2.2.1-py37_0\Lib\site-packages\nb_conda\envmanager.py,将原来的

for env in info['envs']]

修改成

for env in info['envs'] if env != info['root_prefix']]

这是由于 nb_condaconda info --json 解析引起的,可以参考官方 issuehttps://github.com/Anaconda-Platform/nb_conda/issues/66

但是这里还有个问题,就是 conda 只看到了 rootAnaconda3,其它的虚拟环境就没有了

jupyter notebook

针对每一个虚拟环境,执行

conda install -n $虚拟环境名称 ipykernel

这里需要注意,如果后期,又创建了新的虚拟环境,那上面的这一步骤还是需要做的

这时候再次启动 jupyter notebook,在新建文件的时候就可以看到其他的虚拟环境了

jupyter notebook

创建好文件后,进入到 kernel 同样可以进行 conda 虚拟环境的切换,如下

jupyter notebook

更改默认工作目录

默认情况下,jupyter notebook 的工作目录是登录用户的跟目录,比如 Administrator 用户是 C:\Users\Administrator

jupyter notebook

不过通常,这个目录并不是我们想要打开的工作目录,现在我们就来自定义这个目录

cmd 或者 powershell 中执行

jupyter notebook --generate-config

jupyter notebook

然后编辑配置文件 C:\Users\Administrator\.jupyter\jupyter_notebook_config.py,搜索关键字 c.NotebookApp.notebook_dir,将目标目录填写进去,并删掉行首的 #

## The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = 'C:\\xugaoxiang\\gogs'

然后重新启动 jupyter notebook,工作目录就已经改变了

jupyter notebook

jupyter notebook

参考资料

喜欢 (0)

您必须 登录 才能发表评论!