这三样工具都是 Python 开发者的“随身笔记本”,让你能一边写代码一边看结果,马上验证想法。它们共享同一个核心:交互式执行,但各有侧重和场景。
交互式解释器(REPL)
- 是什么:在终端输入
python或python3启动的 Read-Eval-Print Loop,俗称“命令行交互环境”。 - 怎么用:
>>> 2 + 3
5
>>> name = "Alice"
>>> print(f"Hello, {name}")
Hello, Alice
>>> import os
>>> os.getcwd()
'/home/user'
每次输入一行代码,回车立即执行并显示结果。变量、函数、导入的模块在整个会话期间一直有效,直到退出(exit() 或 Ctrl+D)。
- 适合场景:
- 快速测试一小段语法(比如试试
list.sort()有无返回值)。 - 查阅模块的方法(
dir(list)、help(str.replace))。 - 临时计算、小型实验,不需要保存为文件。
- 局限:无法保存成文件,缺少代码补全和语法高亮,多行输入(如定义复杂函数)体验不够友好。
IPython
- 是什么:增强版交互式解释器,命令是
ipython,在基础 REPL 上增加了大量对开发者友好的功能。 - 核心增强:
- Tab 补全:输入对象名加点按 Tab,显示可用方法/属性。
- 内置调试:
%debug进入异常现场,%run运行脚本后变量仍留在命名空间。 - 魔术命令:以
%或%%开头的快捷指令,如: %timeit测量代码执行时间%ls、%cd操作系统文件%who查看当前变量%paste安全粘贴多行代码- 更友好的输出:自动编号输入/输出,
Out[3]可以事后引用。 - 可视化集成:可直接显示 matplotlib 图表。
- 怎么用:安装
pip install ipython,在终端输入ipython即可。启动后用法和普通 Python 一样,但多了魔术命令。用完退出也是exit()。 - 适合场景:
- 日常编码前的实验和探索。
- 需要反复运行同一段代码并微调的调试过程。
- 数据分析中边处理数据边查看形状和统计信息。
Jupyter Notebook
- 是什么:一个网页版交互式开发环境,文件后缀
.ipynb,里面包含“代码单元格”(cell)和“Markdown 文本单元格”。 - 怎么用:安装
pip install notebook后,在项目目录下运行jupyter notebook,浏览器自动打开。新建一个 notebook,就可以在单元格中写代码,按 Shift+Enter 执行并跳到下一个单元格。文本单元格支持 Markdown 排版,可以记录分析思路、公式、结论。 - 独特优势:
- 图文并茂:代码、图表、表格、讲解文字都在同一个文档里,适合制作数据分析报告、教程、演示。
- 状态保持:一个 notebook 内的变量跨单元格共享,从上到下执行,构建叙事流水线。
- 可复现研究:结合
%matplotlib inline,图表直接嵌入页面;可以导出为 HTML、PDF 或 Python 脚本。 - 典型用例:
- 数据探索与可视化(边处理 Pandas DataFrame 边画图看分布)。
- 机器学习建模过程(加载数据→特征工程→训练→评估,每一步都可见)。
- 教学分享(学生可以逐行运行、修改,立刻看到结果)。
三者关系与选型建议
- 快速查语法、临时测试 → 打开终端用 Python REPL 或 IPython。
- 日常调试、反复尝试小块逻辑 → 用 IPython,尤其
%run+ 交互式检查。 - 需要记录分析过程、生成报告、教学演示 → 用 Jupyter Notebook。
- 跨环境便捷体验:VS Code 和 PyCharm 内置了交互式 Python 窗格(本质是 IPython 内核),并提供
.ipynb原生支持,不用离开编辑器就能享受到类似 Jupyter 的体验。
这三样工具让你从“写完—保存—运行—看结果”的循环中解放出来,实现“边写边看,即改即见”,是 Python 开发效率的重要来源。