查看原文
其他

Python文学化编程 - Jupyter notebook使用和插件拓展

陈同 生信宝典 2022-03-28

Jupyter notebook (Ipython notebook)是集代码、结果、文档三位一体的文学化可重复程序文档。支持40多种程序语言,Python为原生语言。如果安装了Anaconda,就会自动包含。Anaconda的安装见之前的文档Linux学习 - Conda软件安装方法

其界面如下:点击右侧的New-Python3就可以新建一个notebook。

这是一个Notebook的界面,鼠标点击即可写代码;点击run cell运行代码;按图示更改每个输入框的内容属性,选择CodeMarkdown,写完内容点击运行就可以运行代码或转换Markdown文本。

常用快捷操作

Jupyter Notebook 有两种键盘输入模式。

编辑模式,允许你往单元中键入代码或文本;这时的单元框线是绿色的。

命令模式,键盘输入运行程序命令;这时的单元框线是灰色。

Shift+Enter: 运行本单元,选中下个单元

Ctrl+Enter: 运行本单元

Alt+Enter: 运行本单元,在其下插入新单元

y:单元转入代码状态

m:单元转入markdown状态

a :在上方插入新单元

b:在下方插入新单元

x:剪切选中的单元

Shift+V:在上方粘贴单元

Jupyter小技巧

  1. 代码框输入%load sxbd.py就会加载之前写过的脚本

  2. 也可以加载在线代码 % load http://www.sxbd.com/sxbd.py

  3. 代码框输入%run progam即可运行写好的Python脚本(一般不写后缀)

  4. 代码框输入!bash command可运行bash命令

  5. %matplotlib inline嵌入matplotlib的图像

  6. %timeit python scripts评估函数的运行时间和内存使用

  7. %lsmagic列出所有的magic函数

  8. 代码框开头输入%%writefile sxbd.py即可把当前cell的命令存到对应文件

    更多Magic见

    http://nbviewer.jupyter.org/github/ipython/ipython/blob/1.x/examples/notebooks/Cell%20Magics.ipynb#The-cell-magics-in-IPython

Jupyter插件安装

  • 安装时先关闭Jupyter程序

  • 安装Jupyter插件管理工具 conda install -c conda-forge jupyter_contrib_nbextensions

  • 激活Jupyter插件管理工具 jupyter nbextensions_configurator enable --user

  • 安装jupyter-vim-binding

    # You may need the following to create the directoy # 一般是家目录下的 ~/.local/share/jupyter/nbextensions mkdir -p $(jupyter --data-dir)/nbextensions # Now clone the repository cd $(jupyter --data-dir)/nbextensions git clone https://github.com/lambdalisue/jupyter-vim-binding vim_binding chmod -R go-w vim_binding
  • 激活jupyter-vim-binding

    启动Jupyter notebook, 进入http://localhost:8888/nbextensions/,激活插件

  每个插件点击可查看其功能描述,使用方式,批量gif演示插件功能。常用的有选择多个Jupyer cell用于复制粘贴,代码自动补全,代码格式美化,py2转py3,标示最大代码长度等,支持VIM模式。

服务器端使用

jupyter notebook --no-browser -y即可启动,访问IP:8888即可。

References

  1. https://github.com/ipython-contrib/jupyter_contrib_nbextensions#installation

  2. https://github.com/lambdalisue/jupyter-vim-binding/wiki/Installation

精品回顾

画图三字经 生信视频 生信系列教程 心得体会 癌症数据库 

高通量分析 Linux Python 在线画图

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存