IPython:加强版Python解释器

2022-12-06 09:30:58 浏览数 (2)

什么是IPython ?

IPython 是一个python的交互式解释器(名字中的I就是交互的意思,Interactive),和原始的Python解释器相比,它的功能更强大,它支持变量补全、自动缩进、内省、魔法命令等等功能。

另外,Jupyter Notebook内置的解释器就是IPython。所以了解IPython也会方便使用Jupyter Notebook。

安装:使用pip install ipython 命令进行安装。

使用:你可以通过命令行输入ipython启动解释器。

2022-06-22-12-53-13-image.png

如果你使用的是Pycharm,点击 Python Console可以启动ipython。(前提是你安装了ipython。如果没装ipython,启动的就是默认的python解释器)。

2022-06-22-14-05-46-image.png

2022-06-22-14-09-01-image.png

IPython功能简介

  1. 1. Tab 自动补全
  2. 2. 内省 在变量前面加? 或者??,例如?list
  3. 3. % 行魔法命令,例如 %run xx.py 运行脚本
  4. 4. %% 单元格魔法命令,例如 %%timeit 统计运行时间
  5. 5. 调用系统shell 命令,只需要在命令前面加!,如!dir!pip install numpy

jupyter-lab

jupyter-lab 是一个集成了Jupyter notebook等功能的浏览器界面。

你可以在里面写 jupyter notebook,使用Ipython解释器、普通终端、使用调试器。

此外,你还可以安装扩展。

安装和启动

安装

代码语言:javascript复制
pip install jupyterlab

启动:在命令行输入jupyter-lab命令启动

代码语言:javascript复制
jupyter-lab

2022-06-22-12-55-11-image.png

然后会跳转到这个页面(http://localhost:8888/lab),你就可以在浏览器中写代码了。

2022-06-22-13-07-57-image.png

下面我们创建一个Notebook。

2022-06-22-13-36-08-image.png

(点击箭头指向的地方,会创建相应的笔记本(Notebook),使用的解释器是我们上面介绍的IPython)

2022-06-22-13-35-04-image.png

这样我们就可以在里面写代码了。笔记本(Notebook)使用的是IPython解释器,所以上面IPython的功能都支持。如代码补全、% 魔法功能等。

下面举几个例子:

代码补全:这里我们输入pr,然后Tab,就会出现补全提示。

可以用键盘的上下箭头选择,然后回车确认。这里第一个就是我需要的print,直接回车。

2022-06-22-13-37-33-image.png

输入代码后,我们点击上方的三角形箭头就可以运行代码(或者用快捷键shift enter 运行)。

2022-06-22-13-41-23-image.png

其它的魔法功能,如?obj %%time使用:

2022-06-22-13-42-52-image.png

2022-06-22-13-44-37-image.png

此外,还可以启动Debug模式。Debug模式下,你可以设置断点(逐步调试)和查看变量情况。

2022-06-22-13-47-45-image.png

step.gif

修改工作目录(可选)

jupyter lab 默认的工作目录是安装位置,如果想更改到其他盘,则在终端使用命令:jupyter lab --generate-config ,会显示出jupyter lab的配置文件位置

2022-06-22-13-23-28-image.png

去相应的位置打开配置文件jupyter_lab_config.py

设置c.ServerApp.root_dir为自己想要的目录。记得把前面的“#”去掉

2022-06-22-13-23-17-image.png

参考资料:

使用IPython有哪些好处?- 知乎 (zhihu.com)

https://www.zhihu.com/question/51467397

概述 — JupyterLab 3.4.3 文档https://jupyterlab.readthedocs.io/en/stable/getting_started/overview.html#jupyterlab-releases

Introducing IPython — IPython 8.4.0 documentation

https://ipython.readthedocs.io/en/stable/interactive/tutorial.html

0 人点赞