Python的IDE之Jupyter的使用
今天给大家分享的是Jupyter安装和基本使用教程,同时在我安装的过程中遇到了一些问题,解决方法,一并和大家分享
一、Jupyter介绍
Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown。用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。优点:好用,很好用。
Jupyter Notebook 也是一个算法工程师友好的工具,但仍有许多拓展的空间,比如:当你的文件中包含大量的代码和 Markdown 混排时,你可能需要一个目录来帮助你更好的对文件结构进行可视化,nbextensions 可以帮我们实现。
二、安装
1 安装方法,windows下,cmd 中直接使用 pip 安装pip install jupyter
注意:Jupyter安装需要Python 3.3或更高版本,或Python 2.7。
# 升级pip3 install --upgrade pip
安装过程比较漫长,大概需要5min左右。
2 安装完成后运行jupyter notebook
如果安装正常,可能不会出错,我这里安装时提醒我Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
所以运行报错:ModuleNotFoundError: No module named 'markupsafe._compat'
提示说markupsafe._compat这个模块找不到,于是我跑到目录Python36\Lib\site-packages\markupsafe下,果然,没有_compat这个文件,然后把markupsafe这个模块卸载了,重装,还是不行,谷歌一下(现在好像都流行这么说了,哈哈哈),找到_compat这个文件内容:
# -*- coding: utf-8 -*- """ markupsafe._compat ~~~~~~~~~~~~~~~~~~ Compatibility module for different Python versions. :copyright: (c) 2013 by Armin Ronacher. :license: BSD, see LICENSE for more details. """ import sys PY2 = sys.version_info[0] == 2if not PY2: text_type = str string_types = (str,) unichr = chr int_types = (int,) iteritems = lambda x: iter(x.items())else: text_type = unicode string_types = (str, unicode) unichr = unichr int_types = (int, long) iteritems = lambda x: x.iteritems()
在目录Python36\Lib\site-packages\markupsafe下创建一个新文件_compat.py,将上面内容写入,保存,然后再cmd下运行jupyther,顺畅:
C:\Users\82055\Desktop>jupyter notebook [I 17:34:01.725 NotebookApp] Writing notebook server cookie secret to C:\Users\82055\AppData\Roaming\jupyter\runtime\notebook_cookie_secret [I 17:34:02.759 NotebookApp] Serving notebooks from local directory: C:\Users\82055\Desktop [I 17:34:02.760 NotebookApp] 0 active kernels [I 17:34:02.761 NotebookApp] The Jupyter Notebook is running at: [I 17:34:02.761 NotebookApp] http://localhost:8888/?token=7d96ee52f2c5c5c451af05e15d6f6cb626b1a6783b590117 [I 17:34:02.762 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [C 17:34:02.764 NotebookApp]
默认会自动跳转到页面(网页)

三、基本使用
3.1修改默认目录
(1)查找jupyter配置文件路径
C:\Users\82055\Desktop> jupyter notebook --generate-config Writing default config to: C:\Users\82055\.jupyter\jupyter_notebook_config.py
(2)找到配置文件,更改默认目录
## The directory to use for notebooks and kernels. c.NotebookApp.notebook_dir = 'H:\PyCoding'
再次启动jupyter,发现主页面文件为我们自己指定的文件夹内的文件了。(默认为电脑桌面文件)
3.2新建一个python文件
我们点击页面上的new按钮,新建一个py3文件,如下动图演示:

而且大家可以看到,我第一次输入2+3,按Shift+Enter键运行,得出结果5,然后还可以把上面的输入更改,改为2+5,再运行,也能得出结果,这也是Jupyter的一个特性:可以修改之前的单元格,对其重新计算,这样就可以更新整个文档了。
3.3一些基本操作(gif?x-oss-process=style/watermark动图演示)

还有很多功能给大家自己开发吧,欢迎评论留言,说出你还知道的Jupyter的其他功能。
四、Jupyter插件安装
不同平台安装
- python:
pip install jupyter_contrib_nbextensions
conda:
conda install -c conda-forge jupyter_contrib_nbextensions
第一个步骤结束后,安装脚本文件
jupyter contrib nbextension install --user
4.1 配置
打开 Jupyter Notebook,可以看到主界面餐单栏多出了 Nbextensions 选项,点击可以展开拓展程序选项:


每个拓展程序均可以单击后查看介绍与使用方法,我们以拓展目录为例。勾选红框中的Table of Contets (2)项目。然后新建一个项目,点击菜单栏的最右边新增的目录符号,即可显示文件目录。更多的设置可以点击左侧目录的设置按钮。

五、Jupyter魔术方法

六、Jupyter快捷键
- Shift-Enter : 运行本单元,选中下个单元
- Ctrl-Enter : 运行本单元
- D,D : 删除选中的单元
- Ctrl-Shift-- : 分割单元
- X : 剪切选中的单元
- C : 复制选中的单元
- Shift-V : 粘贴到上方单元
- V : 粘贴到下方单元
- Z : 恢复删除的最后一个单元
- Ctrl-A : 全选
- Ctrl-Z : 复原
- Shirt:选中多个单元格
- Shirt+M:合并选中的单元格
- shift+tab :查看当前接口的属性

七、Jupyter后home页面空白问题解决
7.1 解决方案1
更换默认的浏览器,选择谷歌浏览器,很多360打不开的页面,更换谷歌后都能有效解决,并且确保是最新版本的google浏览器。
7.2 解决方案2
1.产生jupyter_notebook_config.py
文件,使用windows+r
打开cmd命令输入命令:jupyter notebook --generate-config
(注意notebook后面有空格)
在cmd界面中会提示出,jupyter_notebook_config.py
中文件的路径
2.打开jupyter_notebook_config.py
文件,在第(95-99行)找到 # c.NotebookApp.browser = ''
## Specify what command to use to invoke a web browser when opening the notebook. # If not specified, the default browser will be determined by the `webbrowser` # standard library module, which allows setting of the BROWSER environment # variable to override it. #c.NotebookApp.browser = ''
在该行代码下方增加
import webbrowser webbrowser.register('chrome', None, webbrowser.GenericBrowser( u'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe')) c.NotebookApp.browser = 'chrome'
其中上面代码中C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
是google浏览器的路径地址。
3.再次打开jupyter notebook,如果默认浏览器不是google浏览器,复制自己电脑中的cmd中的http://localhost:8888/?token=74493923aa071ac11d0a797133a6736296308800110bf662
到谷歌浏览器中。
7.3 解决方案3
- 能打开Home页面说明你的jupyter已经安装好了,可能是网页模式不兼容的问题
- 这时候,鼠标右键点击“切换到极速模式”
- 切换以后,可以正常显示页面