Python18

Jupyter 小记

2017-09-22  本文已影响756人  齐州读经客

介绍

Jupyter是从IPython中拆分出来的独立应用,同事也是开源软件,主要用途是interactive data science and scientific computing。从IPython迁移到Jupyter,主要是配置和数据等路径的修改,参见官方文档。目前版本5.x(6.x, 2018年6月)。

几个概念:

Jupyter特点:

代码(包括运行结果)和文档(包括公式和图表)都能同时展示,以及Python语言和相关库的优势。
相关参考实例的网站:https://nbviewer.jupyter.org/


安装,测试

在线使用

网址:https://try.jupter.org

本地使用(安装)

$ pip3 install --upgrage pip # 保证pip是最新版本
$ pip3 install jupyter
$ conda update jupter
$ pip3 install --upgrade jupyter

说明:
代码框中开始的$表示命令行提示符,无需输入;非开始的#表示注释的开始

补充:如何实现Jupyter Notebook同时支持Python 2和Python 3
在已安装Python 3情况下(例如使用Anaconda3安装);安装其他内核参见:https://github.com/jupyter/jupyter/wiki/Jupyter-kernels

# 建立一个Python2的虚拟环境
conda create -n py2  python=3
# 激活环境
source activate py2
# 安装ipykernel
conda install ipykernel
# 查看
python -m ipykernel install --user

# 启动notebook,可以看得Python2和Python 3内核
jupyter notebook
同时支持Python 2和Python 3

Jupyter Notebook

组件

Jupyter中包括notebook, console和qtconsole。其中:

运行

启动Notebook服务器:

$ jupyter notebook
$ jupyter notebook my_notebook.ipynb # 打开my_notebook.ipynb
$ jupyter notebook --port 9999 # 设置自定义端口
$ jupyter notebook --no-brower # 启动时不打开浏览器
$ jupyter notebook --ip="*" # 允许任意IP连接,可用于局域网共享
$ jupyter notebook --help # 帮助信息

补充:

  • Linux中避免SSH退出导致进程终止
    nohup jupyter notebook
  • 查看正在运行的Notebook(可以方便查看tokens)
    jupyter notebook list

在浏览器中输入http://localhost:8888,打开Notebook Dashbord(仪表盘),可以建立:文本文件(Text File,txt)、文件夹(Folder)、命令行(Terminal)、笔记本(Notebook, ipynb)。
浏览器页面区域可分为 4 块,从上到下依次为:

jupyter notebook可以启动多个,端口号会自动累加。

相关操作

notebook document的结构

快捷键

快捷键的操作可以在文档上部的菜单栏/工具栏中找到。

以下需要在命令模式(Esc进入,类似vim)中有效,主要是文档编辑命令:

文本编辑:

更多参见菜单栏【Help->Keyborad shortcuts】

高级操作

import math
import numpy as np
?math.cos()
np.array?
%lsmagic # 查看所有魔法命令

%run ./xx.ipynb # 运行一个jupyter notebook,并非导入python模块
%matplotlib inline # 采用行内模式,在绘图输出函数后加冒号可抑制输出结果

安装其他语言的核,如R,可以用:
conda install -c r r-essentials

配置

配置文件

jupyter notebook --generate-config

浏览器Token问题

默认启动时,如果手动输入URL,需要填写token。

解决(还是有问题,待解决):

  1. 生成sha1密钥

在Jupyter Notebook新建文件,输入并执行,输入密码后获得sha1:xxx的密钥值

from notebook.auth import passwd
passwd()
  1. 将密钥值写入配置文件用户路径/.jupyter/jupyter_notebook_config.py
    该配置文件可通过jupyter notebook --generate-config生成,文件末尾写入内容:
c.NotebookApp.password = 'sha1:xxx' # 可以找到相应值,取消注释并修改

字体和主题

相关讨论知乎:jupyter notebook中显示字体如何调整?

扩展管理器

jupyter_contrib_nbextensions github网站
安装使用:jupyter contrib nbextension install --user

$ jt -h # 帮助
$ jt -l # 列出可用的主题
$ jt -t chesterish # 使用某个主题,需要重启Jupyter Notebook

其实是在用户路径~/.jupyter/custom/custom.css定义了样式
Anaconda3\Lib\site-packages\notebook\static\custom\custom.css

Linux非Bash环境使用注意

set PATH $PWD/anaconda3/bin $PATH
source (conda info --root)/etc/fish/conf.d/conda.fish

参考

上一篇 下一篇

猜你喜欢

热点阅读