前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jupyter Notebook介绍(上篇)

Jupyter Notebook介绍(上篇)

作者头像
MeteoAI
发布2019-07-24 16:05:47
1.4K0
发布2019-07-24 16:05:47
举报
文章被收录于专栏:MeteoAIMeteoAI

2019年的第一篇~先祝大家新年快乐!在2019开开心心打代码,顺顺利利debug!

今天我们分享一下Jupyter Notebook,这是一个交互式笔记本,可以支持很多的编程语言。今天我们基于python介绍一下如何优雅的使用它。

首先当然是要安装Jupyter了,可以用pip或者conda直接安装。具体的安装详情请移步:

一文教你解决Python所有安装配置

代码语言:javascript
复制
# pip, 先升级pip再安装是个好习惯
pip install --upgrade pip
pip install jupyter
# conda
conda install jupyter notebook

安装完之后就可以在命令行输入jupyter notebook打开,会通过系统默认的浏览器链接到已经在本地启动的notebook URL(默认为http://127.0.0.1:8888),当然你也可指定端口打开,比如jupyter notebook --port 8989。在弹出的浏览器中看到这样的页面,就说明成功啦!

1. 开启第一个notebook

点击右上角的New即可以创建第一个notebook开始开开心心快快落落的打代码了!因为只有一个 Python 内核,所以我们运行一个Python notebook,其他的内核(如R, Julia等)大家可以自行安装。在新打开的标签页中,我们会看到notebook页面。

接下来就可以开始写代码了。好了。我们的介绍就到这里了!谢谢大家。

2. 基础使用介绍

作为一个半吊子的但还是有那么点良心和情怀的公众号,我们当然不能这么不负责任!要尽阔能的多分享干货给大家!

那就再给大家具体讲讲Jupyter的页面的几个常用设置和快捷键。首先notebook的基本操作选项可以通过下面JUPYTER名字下面的两栏菜单进行。

  • 主工具栏,提供了保存、添加cell、复制粘贴剪切、运行、停止、重载、重启内核等选项,大家可以试试。其中运行cell可以用快捷键Shift-Enter
  • 一些常用的快捷操作

1. 显示行号,方便debug

2. 添加、删除、移动代码块
  • 添加cell,快捷键A:在上面添加 B:在下面添加)
  • 移动cell
  • 删除cell, 快捷键DD
3. 更换cell的类型,写Markdown和LaTeX,快捷键M

代码单元格(code cell),以[ ]开头,若没有[ ]则为Markdown,我们可以用markdown和LaTeX的语法开开心心的写我们想写的东西。

更具体的markdown和LaTeX语法以后有机会再给大家介绍吧。大概效果就是下面这样。

  • 更多快捷键速查
代码语言:javascript
复制
命令模式 (按键 Esc 开启)
Enter : 转入编辑模式
Shift-Enter : 运行本单元,选中下个单元
Ctrl-Enter : 运行本单元
Alt-Enter : 运行本单元,在其下插入新单元
Y : 单元转入代码状态
M :单元转入markdown状态
R : 单元转入raw状态
1 : 设定 1 级标题
2 : 设定 2 级标题
3 : 设定 3 级标题
4 : 设定 4 级标题
5 : 设定 5 级标题
6 : 设定 6 级标题
Up : 选中上方单元
K : 选中上方单元
Down : 选中下方单元
J : 选中下方单元
Shift-K : 扩大选中上方单元
Shift-J : 扩大选中下方单元
A : 在上方插入新单元
B : 在下方插入新单元
X : 剪切选中的单元
C : 复制选中的单元
Shift-V : 粘贴到上方单元
V : 粘贴到下方单元
Z : 恢复删除的最后一个单元
D,D : 删除选中的单元
Shift-M : 合并选中的单元
Ctrl-S : 文件存盘
S : 文件存盘
L : 转换行号
O : 转换输出
Shift-O : 转换输出滚动
Esc : 关闭页面
Q : 关闭页面
H : 显示快捷键帮助
I,I : 中断Notebook内核
0,0 : 重启Notebook内核
Shift : 忽略
Shift-Space : 向上滚动
Space : 向下滚动
编辑模式 ( Enter 键启动)
Tab : 代码补全或缩进
Shift-Tab : 提示
Ctrl-] : 缩进
Ctrl-[ : 解除缩进
Ctrl-A : 全选
Ctrl-Z : 复原
Ctrl-Shift-Z : 再做
Ctrl-Y : 再做
Ctrl-Home : 跳到单元开头
Ctrl-Up : 跳到单元开头
Ctrl-End : 跳到单元末尾
Ctrl-Down : 跳到单元末尾
Ctrl-Left : 跳到左边一个字首
Ctrl-Right : 跳到右边一个字首
Ctrl-Backspace : 删除前面一个字
Ctrl-Delete : 删除后面一个字
Esc : 进入命令模式
Ctrl-M : 进入命令模式
Shift-Enter : 运行本单元,选中下一单元
Ctrl-Enter : 运行本单元
Alt-Enter : 运行本单元,在下面插入一单元
Ctrl-Shift-- : 分割单元
Ctrl-S : 文件存盘
Shift : 忽略
Up : 光标上移或转入上一单元
Down :光标下移或转入下一单元

3. 执行Shell命令

在jupyter中可以在命令前加!直接写shell是不是很方便?

代码语言:javascript
复制
!ls
# MyFirstNotebook.ipynb mygit back_data temp

!pwd
# /Users/myspace/script

!cd ..

!ls ~

也可以将shell和python结合。将shell的结果传给python的变量。比如:

代码语言:javascript
复制
file_list = !ls
file_list
# ['MyFirstNotebook.ipynb', 'back_data', 'mygit', 'temp']

path = !pwd
path
# /Users/myspace/script

4. 在服务器搭建一个开放的notebook

我们也可以在服务器搭建一个开放的notebook方便远程访问。假设我们有一个阿里云的服务器,我们要在上面运行一个notebook方便我们通过pc直接访问。

操作步骤:

  1. 在阿里云后台,打开相应的端口,比如我们这里打开8055端口
  2. 安装完jupyter后,输入$ jupyter notebook --generate-config产生配置文件。
  3. 进入ipython,配置密码,记下密码(用于登录),并复制hash码sha1:…(用于配置):
代码语言:javascript
复制
In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:...'
  1. 编辑jupyter配置文件:
代码语言:javascript
复制
$ vi .jupyter/jupyter_notebook_config.py

添加:

代码语言:javascript
复制
c.NotebookApp.ip='*'
c.NotebookApp.notebook_dir = u''
c.NotebookApp.open_browser = False
c.NotebookApp.password = 'sha1:...'
c.NotebookApp.port =8055

保存退出

  1. 在防火墙开放相应的端口
代码语言:javascript
复制
$ sudo ufw status #查看端口开放状态
$ sudo ufw allow 8055
  1. 运行jupyter
代码语言:javascript
复制
$ nohup jupyter notebook >> jupyter.out 2>&1 &

即可通过浏览器访问。

http://yourhost:8055, 密码是你在ipython里设置的密码。


可能会出现的bug:

5. 自定义jupyter的风格

jupyter notebook界面是可以通过jupyter-themes定制的。

代码语言:javascript
复制
# install jupyterthemes
pip install jupyterthemes

# upgrade to latest version
pip install --upgrade jupyterthemes

安装成功后可以通过以下命令选择想要的风格,或者返回出厂设置。

代码语言:javascript
复制
# 选择风格
jt -t <name of the theme>
# 对于可选的风格有:
"""
chesterish
grade3
gruvboxd
gruvboxl monokai
oceans16
onedork
solarizedd
solarizedl
"""
# 不喜欢,可以返回出厂设置
jt -r
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MeteoAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 开启第一个notebook
  • 2. 基础使用介绍
    • 2. 添加、删除、移动代码块
      • 3. 更换cell的类型,写Markdown和LaTeX,快捷键M
      • 3. 执行Shell命令
      • 4. 在服务器搭建一个开放的notebook
      • 5. 自定义jupyter的风格
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档