实习之后开始用jupyter notebook,感觉实在太方便。可以灵活的调试,还可以直接写markdown,配合快捷键操作起来简直指哪打哪。下面介绍一下从0开始安装和上手jupyter。
安装jupyter之前先把python装上,然后在命令行里输入
pip jupyter
稍加等待就安装好了,想要运行就在命令行输入
jupyter notebook
复制命令行里提示的站到浏览器里,就可以写代码了。
如果想在服务器上运行jupyter也很方便,在命令行里运行
sudo pip install jupyter
python
>>> from notebook.auth import passwd
>>> passwd
输入想要设定的密码然后得到相应的sha1值,然后
jupyter notebook --generate-config
生成jupyter配置文件,然后修改配置文件
vim ~/.jupyter/jupyter_notebook_config.py
在最后添加或者找到对应的位置修改
c.NotebookApp.ip='*' # 就是设置所有ip皆可访问
c.NotebookApp.password = u'sha:ce...' # 刚才获得的那个sha1值
c.NotebookApp.open_browser = False # 禁止自动打开浏览器
c.NotebookApp.port =8888 # 随便指定一个端口
c.NotebookApp.notebook_dir = '~' # 指定jupter启动位置
在服务器端启动 jupyter notebook,得到网址,在本地登陆网页。配合screen命令更加方便。
新建ipy点击new->python3即可。新建后可以发现运行的的单元是一个cell,虽然也可以逐行运行,但是一般都是一个cell一个cell的运行。cell的边框为绿色为编辑模式,按ESC键,就可以退回到命令模式,令模式下被选中的单元采用蓝色边框显示。
点击Help->Keyboard Shortcut可以查看快捷键,常用快捷键如下:
- L: 显示代码的行号
- m/数字键: 将单元格变为markdown类型,可以编写文档和标题,可以$$用LaTex的语法
- y: 将单元格变为代码类型,在代码类型的单元格中输入Python代码
- dd: 删除单元格
- z: 撤销最后删除单元格操作
- a: 在当前单元格之上创建一个新的单元格
- b: 在当前单元格之下创建一个新的单元格
- x: 剪切当前单元格
- c: 复制当前单元格
- v: 在当前单元格之下粘贴剪切板中的单元格
- shift+m:与下面的单元合并
- ctrl+enter:运行当前单元格
- shift+enter:运行当前单元格并自动选择下一个单元。
- Alt+Enter:运行当前的代码并在下面插入新的单元。
- ctrl+/:为一行或多行添加或取消注释
- ii:终止循环
- TAB:显示补全的代码。
对于当前环境中已知的对象,可以在其后面添加问号查看相应的说明信息和文档,添加两个问号可以查看对象对应的源程序。按Ctrl+Enter显示。
调用函数时,按[shift+tab]组合键可以显示函数的调用参数和说明文档,按一次组合键显示基本信息,两次显示详细信息,三次延时停留信息框,四次则将信息显示在下方的滑动窗口中。
还会经常用到的命令是%magic命令,常用的migic命令有下面几个:
%magic命令
从本地导入python文件,可以直接使用%load xxx.py,然后按Ctrl+Enter
从网络中导入python代码,可以使用%load 网址
%run xxx.py 按Ctrl+Enter后,可在jupyter中运行python文件
当在程序中使用了matplotlib绘图,不能直接显示时,可以添加%matplotlib inline
设置环境%env CUDA_VISIBLE_DEVICES=5
写好的代码可以另存为其他的文件格式,比如:md文件、pdf文档、py文件。方法也很简单,点击File->Download as->xxx。
最爽的是可以在http://nbviewer.jupyter.org/ 上查看被人分享的.ipnb,阅读效果和看自己的的代码一样,非常的爽。