和李笑来学python
2019-03-16
李笑来发布了他的新书《自学是门手艺》,核心是教授python编程技能。新书首发在github,而且是通过jupyter形式,对零基础或基础较差不是很友好。后面可能会好些,但初期就是这样。
我之前也没有使用过jupyter,第一节就是学习使用jupyter,不然没法看书。虽然项目上有相应的安装配置指南,但是适用与mac。我用的linux+windows也挺有参考价值,但是小白可能就会掉坑。所以我把环境准备过程记录下,方便大家交流,也方便我以后查看。
虽说我使用windows+linux,但是部署环境主要是在linux上(windows10上部署在了ubuntu子系统)。我觉得,如果不太会linux,那学习python的过程就多学个linux。其实不复杂,只是一个软件的载体。
linux安装软件,我一般放在/usr/local目录下。李笑来建议放在家目录/home/<yourname>/下,这是方便新手的一个建议,因为对于新手家目录最好找,一上来就关注部署环境。如果你不知道自己在哪个目录下,使用pwd
命令,另外使用cd
命令快速跳回你的家目录。
下面开始安装anaconda3。我把下载地址替换成了国内镜像,这样速度快一些。
cd
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
sh Anaconda3-5.3.1-Linux-x86_64.sh
然后就是等待,期间会提示你做几个选择,一般选yes就行。最后vs code我没有安装,这是一个文本编辑器。
装完anaconda,更新前先把它的软件源更换为国内的,国外的实在慢,如果没有梯子可能还会失败。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --set show_channel_urls yes
上面命令添加了anaconda国内仓库镜像,附加库只添加了conda forge。其他附加库如msys2等,详细见镜像网站的帮助说明[https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/]
然后就是升级anaconda和安装组件:
conda update conda
conda update anaconda
conda install -c conda-forge nodejs
conda install -c conda-forge jupyterlab # 这是用来升级 jupyter lab 到最新版的方法
以上完成python和jupyter的准备,下一步下载github项目:
cd
mkdir self
git clone https://github.com/selfteaching/the-craft-of-selfteaching.git self
等clone完成,进入项目目录启动jupyter
cd self
jupyter lab
然后浏览器打开http://localhost:8888/lab? 输入token验证身份就可以看到项目内容了
为了之后查看方便,下面对jupyter做一些配置,实现不再验证token:
jupyter lab --generate-config
vi .jupyter/jupyter_notebook_config.py
然后在配置文件最后添加:
#c.NotebookApp.token = ''
#c.NotebookApp.open_browser = False
#c.NotebookApp.notebook_dir = '~/'
#c.NotebookApp.default_url = '/tree'
题外话,在 Terminal 里常用的与 Jupyter 有关的命令有:
jupyter lab
jupyter lab --version
conda install -c conda-forge jupyterlab # 这是用来升级 jupyter lab 到最新版的方法
jupyter notebook list # 查看正在运行的 jupyter lab/notebook
jupyter notebook stop # 停止 jupyter lab/notebook 服务
其他配置参考github项目上的说明,我觉得上面就够用,更多的时间还是放在阅读上吧。
网友评论