Python的IDE之Jupyter的使用
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_nbextensionsconda:
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已经安装好了,可能是网页模式不兼容的问题
- 这时候,鼠标右键点击“切换到极速模式”
- 切换以后,可以正常显示页面
Python的IDE之Jupyter的使用的更多相关文章
- 3、Python的IDE之Jupyter的使用
一.Jupyter介绍 Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown.用途包括:数据清理和转换,数 ...
- 2、Python的IDE之PyCharm的使用
一.Python集成开发环境-Pycharm介绍 PyCharm是一款功能强大的,用于编写复杂需要结构化的功能代码,下面介绍一下 在Windows下如何安装PyCharm . 操作系统:Windows ...
- Python在线IDE | 谷歌Colaboratory云端IDE介绍
目录 1. 推荐阅读 2. 本文地址 3. 按 4. 使用篇 6. 教学篇 1. 推荐阅读 Python基础入门一文通 | Python2 与Python3及VSCode下载和安装.PyCharm破解 ...
- Python的IDE之Pycharm的使用
Python的IDE之Pycharm的使用 一.为什么用IDE(Python集成开发环境-Pycharm) 到现在为止,我们也是写过代码的人啦,但你有没有发现,每次写代码要新建文件.写完保存时还要选择 ...
- 【转】使用Python的IDE:Eclipse+PyDev
原文网址:http://www.crifan.com/try_with_python_ide_eclipse_pydev/ 之前已经介绍过了一些基本知识: [整理][多图详解]如何在Windows下开 ...
- 【整理】各种Python的IDE(集成开发环境)的总结和对比
原地址:http://www.tuicool.com/articles/rMVJNn 原文 http://www.crifan.com/summary_common_python_ide_pyscr ...
- dotfiles for linux/unix users automatically! (python Vim IDE)
Here is a brief introduction and package of dotfiles for linux/unix user. I think there are enough i ...
- python eric6 IDE
之前开发一直使用sublime text + anaconda, 无意中发现了eric, Python主流IDE对比:Eric VS. PyCharm 使用IDE绝对是能提高开发效率的... http ...
- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda
---恢复内容开始--- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda 从头开启python的开发环境搭建.安装比较简单, ...
随机推荐
- Codeforces 1051 D.Bicolorings(DP)
Codeforces 1051 D.Bicolorings 题意:一个2×n的方格纸,用黑白给格子涂色,要求分出k个连通块,求方案数. 思路:用0,1表示黑白,则第i列可以涂00,01,10,11,( ...
- 必懂知识——HashMap的实现原理
HashMap的底层数据结构 1.7之前是:数组+链表 数组的元素是Map.Entiry对象 当出现哈希碰撞的时候,使用链表解决, 先计算出key对应的数组的下标,这个数组的这个位置上为空,直接放入, ...
- RSA加密算法c++简单实现
RSA是一种非对称加密算法,在公开密钥和电子商业中RSA被广泛使用.它是基于一个很简单的数论事实,两个素数相乘很容易,对两素数乘积因式分解很困难.原理就不再阐述了,我谈谈算法的编程实现过程. 一.RS ...
- MAC ADDRESS
可以使用手机Wifi或蓝牙的MAC地址作为设备标识,但是并不推荐这么做,原因有以下两点:硬件限制:并不是所有的设备都有Wifi和蓝牙硬件,硬件不存在自然也就得不到这一信息.获取的限制:如果Wifi没有 ...
- [java]取当前平台默认字符集,取字符串长度
public class TimestampLength { public static void main(String[] args) { System.out.println(java.nio. ...
- 中间件 | kafka简介、使用场景、设计原理、主要配置及集群搭建
开源Java学习 公众号 一.入门 1.简介 Kafka is a distributed,partitioned,replicated commit logservice.它提供了类似于JMS的特性 ...
- 性能测试 | 系统运行缓慢,CPU 100%,Full GC次数过多问题排查
处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题.当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警.本文主要针对系统运行缓慢这 ...
- [go]包管理
vendor方式 //包管理发展 go get(无版本概念) -> vendor(godep)(无版本概念) -> go modules go get github.com/tools/g ...
- java高级之多线程
1.1,多线程的作用: *线程是程序执行的一条路径, 一个进程中可以包含多条线程 *多线程并发执行可以提高程序的效率, 可以同时完成多项工作 1.2,多线程的应用场景: * 红蜘蛛同时共享屏幕给多个电 ...
- [GPU] Machine Learning on C++
一.MPI为何物? 初步了解:MPI集群环境搭建 二.重新认识Spark 链接:https://www.zhihu.com/question/48743915/answer/115738668 马铁大 ...