在pandas
开发中,代码编辑工具jupyter notebook
是个不错的选择,它可以更加具体的展示DataFrame的结构,下面我们介绍如何安装jupyter notebook
这种方式比较简单,直接在我们的电脑上安装Anaconda
就行,安装完成后,就可以看到配套的jupyter notebook
,可以通过启动Anaconda
后点击内部的jupyter notebook
启动,或者绕过Anaconda
直接找到Anconda
文件夹下的jupyter notebook
快捷方式启动。
这里主讲第二种方式,因为笔者本人比较喜欢轻量化的东西,笔者只用jupyter notebook
进行pandas
相关代码的编程,没必要为此再安装一个conda
环境。
安装
笔者开发python代码都是在项目各自的虚拟环境中进行的,默认环境的三方模块极少。 jupyter notebook
的依赖模块极多,且笔者将其作为一种在网页上的编译器使用,所以选择为其创建一个新的虚拟环境jupyter
。(虚拟环境的创建与删除)
笔者重装时发现,最新版本配置方式可能与本文档有差异,所以这里给出笔者使用的版本。
mkvirtualenv jupyter
pip install jupyter notebook==6.5.6
配置工作目录
打开命令行,切换到你虚拟环境的Scripts
目录,以笔者的为例
cd C:\workspace\venv\jupyter\Scripts
运行如下命令生成配置文件
jupyter notebook --generate-config
我们找到该文件,在内容中查找c.NotebookApp.notebook_dir
,修改它的值''
为你的工作目录,以笔者为例:c.NotebookApp.notebook_dir = 'C:\\workspace\\jupyter'
,这里需注意转义字符。
启动
打开命令行,切换到你虚拟环境的Scripts
目录启动,以笔者的为例
jupyter notebook
看到下面结果即为启动成功,启动后会自动打开默认浏览器到jupyter notebook
页面
这样启动是不是有些麻烦,笔者决定写一个bat
脚本文件来静默启动jupyter notebook
@echo off
% 静默运行,如果不需要可以将下方3行代码删除 %
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
% 启动 jupyter notebook %
cd /d C:\workspace\venv\jupyter\Scripts
jupyter notebook
如果静默运行,如何关闭呢?打开任务管理器 - 详细信息,我们可以看到一个jupyter-notebook.exe
进程,右键结束进程即可
或者bat
脚本文件关闭
@echo off
% 静默运行,如果不需要可以将下方3行代码删除 %
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
taskkill /f /im jupyter-notebook.exe
这里笔者将二者合一,编写了一个自动判断进程状态来决定启动还是关闭的bat
脚本
@echo off
::命令行输出中文乱码解决方案
::文件另存为,下方选择ANSI编码
::chcp 65001
::判断 jupyter-notebook.exe 进程是否存在
tasklist | find /i "jupyter-notebook.exe"
if %errorlevel%==0 (
goto 1
) else (
goto 2
)
:1
echo jupyter notebook 正在运行
echo 开始关闭 jupyter notebook
::静默运行,如果不需要可以将下方3行代码删除
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
taskkill /f /im jupyter-notebook.exe
ping 127.0.0.1 /n 2 > nul
exit
:2
echo jupyter notebook 未启动
echo 开始启动 jupyter notebook
::静默运行,如果不需要可以将下方3行代码删除
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
cd /d C:\workspace\venv\jupyter\Scripts
jupyter notebook
ping 127.0.0.1 /n 2 > nul
exit
卸载
# pip uninstall jupyter notebook是无法完全卸载jupyter的
# 而且网上搜到的许多卸载方法,都是治标不治本,经测试无法将依赖模块完全删干净
# 猜测:可能未被卸载的依赖可以独立使用,无法判断用户是否在使用
# 所以单独为其创建一个虚拟环境就很nice,此时我们直接删除该虚拟环境即可
rmvirtualenv jupyter
通用
功能 | 快捷键 |
---|---|
编辑模式 转到 命令模式 | Esc |
命令模式 转到 编辑模式 | Enter |
编辑模式
功能 | 快捷键 |
---|---|
执行单元格 | Ctrl + Enter |
执行并移动到下一单元格 | Shift + Enter |
执行并向下新建、移动到下一单元格 | Alt + Enter |
命令模式
功能 | 快捷键 |
---|---|
删除单元格 | 命令模式 + D,D |
剪切单元格 | 命令模式 + X |
显示行号 | 命令模式 + L |
查找与替换 | 命令模式 + F |
中断内核 | 命令模式 + I,I |
合并单元格 | 命令模式 + Shift + M |
进入jupyter notebook
所在的虚拟环境安装jupyter_contrib_nbextensions
插件
workon jupyter
pip install jupyter_contrib_nbextensions
jupyter nbextensions_configurator enable --user
jupyter contrib nbextension install --user --skip-running-check
重启jupyter notebook
,菜单栏会出现Nbextensions
插件菜单,取消勾选disable ...
,勾选下方Hinterland
选项,如下图所示,就此可以开始代码补全之旅了;另外,勾选Codefolding
选项表示开启代码块折叠
进入jupyter notebook
所在的虚拟环境安装jupyterthemes
插件
workon jupyter
pip install jupyterthemes
pip install --upgrade jupyterthemes # 用于更新主题
jt -h # 查看帮助,包括下方启用主题时附加的一些参数的描述
jt -l # 查看主题
# 其中暗色主题:chesterish、gruvboxd、monokai、oceans16、onedork、solarizedd
# 推荐两种字体:Hack、DejaVu Sans Mono
# 对应应用主题时的参数是:hack、dejavu
# 博主目前主题配置
jt -t oceans16 -f hack -fs 14 -ofs 10 -dfs 10 -nfs 14 -tfs 14 -cursw 3 -kl -TN -cellw 80%
# 当设置自定义主题后,同时开启行号显示和代码块折叠后,行号会被挤到代码cell里
# 有没有大佬知道怎么解决,可以留言帮忙解决一下