Update 04.28.2019:重构了本文的逻辑结构,修改了失效的链接
Jupyter Notebook
Jupyter Notebook是一个交互式笔记本,支持运行 40 多种编程语言。它对于希望编写漂亮的交互式文档的人来说是一个强大工具。 划重点: 支持python、交互式文档。
本文的目的是详细地说明Jupyter Notebook安装过程中可能遇到的问题,保证读者在阅读完本文后能够打开在任何目录下、以.ipynb为后缀的任意Jupyter Notebook文件。
具体如何使用Jupyter Notebook,教程见Jupyter Notebook 快速入门。
对于代码无法运行,缺少相关库的问题,见“Anaconda/conda使用指南”(TBC)
背景
因为我大一的时候安装了Enthought Canopy(用它的python.exe作为PyCharm内核),所以一直用的是Canopy来打开.ipynb。但是因为Canopy的Python版本是Python2.7,加上numpy官方宣布某个时间点后不再支持Python2.7,所以打算重新下载一个Python3的编辑器,我选择了Anaconda自带的,现在用Anaconda的人好像比Canopy多一点。
安装
~~从[清华大学开源软件镜像站](https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/)下载Anaconda镜像。 推荐:Anaconda3-4.4.0-Windows-x86_64.exe。~~清华的镜像因为没有授权不再提供下载链接了,直接在Anaconda官网上下载即可。
使用
安装完成后,虽然桌面没有出现Jupyter Notebook的图标。但是已经可以在开始菜单中找到"Anaconda3"文件夹,打开其中的“Jupyte Notebook”了!However!!!
Jupyter Notebook默认的工作目录是在C:/Document/下,非常弱智。因为有的时候已有的notebook(.ipynb)已经放在其他盘的工作文件夹下了,直接打开Jupyter Notebook是没有办法/很麻烦才能访问到目标文件夹的。
为了方便快捷地启动Jupyter Notebook 1,修改Jupyter Notebook的默认工作目录,这里提供一个最简单的方法:
在你要打开的目录里新建.bat文件,名为“start notebook.bat”。输入以下内容:
rem -- start_ipython_notebook_here.bat ---
dir
ipython notebook
pause
注意:
- 使用过程中不要关闭cmd。
- 这种方式可能因为已有系统变量产生“Notebook打开后使用的是其他版本的python内核”的bug,下一节会说明如何解决。
- 在本文最后,提供了修改默认工作目录的三种方法。虽然这里推荐的方法最简单,但读者可以根据需求自行参考。
Notebook打开后使用的是其他版本的python内核
Keyword : Jupyte Notebook python2 python3问题描述
安装了Anaconda3后,打开自带的Jupyter Notebook发现kernel是python2。DEBUG
1. 查看启动方式
看起来一切正常。
-
查看Anaconda3的python版本
一切正常。 -
修改kernel.json文件 1
em…文件夹下只有一个python3文件夹。而且用于显示的display name写的是“python3”
那为什么kernel会显示python2呢?怀疑是Anaconda配置没有生效 -
修改config文件
然而C:\Users\Administrator\.jupyter文件夹下,还没有生成config文件。说明不是config文件导致的问题。 -
尝试添加Anaconda python.exe所在文件夹到系统路径
Don’t Work。但是注意到path里添加了Canopy的Scripts文件夹 -
根据2,发现需要将python所在文件夹和对应Scripts文件夹都添加到path
总结
这个bug出现的原因是用了.bat,导致没有执行快捷方式中指定python.exe、Scripts的命令,从而使系统变量path写入的对应python内核被执行。 那解决的办法也很简单,将下面的路径添加到path,再删除其他的内核路径即可。C:\ProgramData\Anaconda3\Scripts;
C:\ProgramData\Anaconda3;
这种方式虽然简单,但有失灵活,下面还提供两种方修改默认工作目录的方法。
修改默认工作目录的三种方法
方式一 使用.bat
这是前面讲过的,新建.bat文件的方法。在你要打开的目录里新建.bat文件,名为“start notebook.bat”。输入以下内容:
rem -- start_ipython_notebook_here.bat ---
dir
ipython notebook
pause
方式二 使用快捷方式
1. 删除快捷方式中%USERPROFILE% 2. 把想要设置的开始目录添加到最后(如果文件夹有空格,要用""括起来)方式三 使用快捷方式
1. 删除快捷方式中%USERPROFILE% 2. 在cmd中输入`jupyter notebook --generate-config` 3. 在提示的目录下修改config文件
添加对应启动目录的地址,比如E:\\Online Education\\deeplearning.ai-master
方式三 使用.bat
将下面的路径添加到pathC:\ProgramData\Anaconda3\Scripts;
C:\ProgramData\Anaconda3;
对于以上三种修改默认工作目录的方法:
我个人推荐使用方式二。对于要使用多个目录的情况,可以通过建立多个快捷方式来解决。
使用快捷方式(方式三)启动和.bat(方式一)各有优劣(一个需要写死路径到config,一个需要写死python.exe和Scripts到path),这需要读者自己斟酌、选择。