IPython 代码调试
时间: 2025-02-01 18:10:10 浏览: 40
### IPython 中的代码调试
#### 使用 `%debug` 命令
当遇到异常时,可以通过命令 `%debug` 来启动事后调试器。这允许进入交互式的调试环境来检查变量状态以及执行上下文[^3]。
```python
def divide(a, b):
result = a / b
return result
divide(1, 0) # 触发 ZeroDivisionError 错误
%debug # 启动调试会话
```
#### 动态设置断点
利用 `pdb` 模块中的 `set_trace()` 函数可以在任意位置嵌入断点,从而暂停程序以便于逐步跟踪逻辑流程并查看当前作用域内的数据状况[^4]。
```python
import pdb
def complex_calculation(x, y):
intermediate_value = (x * y) ** 2
pdb.set_trace() # 此处设定了一个断点
final_result = intermediate_value + x - y
return final_result
complex_calculation(5, 3)
```
#### 性能分析工具
除了基本的调试外,IPython 提供了性能剖析的功能,比如通过魔法指令 `%timeit` 可以快速评估某段代码片段的时间消耗;而 `%prun` 则能够给出函数调用期间各部分所占用资源比例的信息,这对于优化算法效率非常有帮助[^5]。
```python
# 单行代码测试
%timeit sum(range(1000))
# 多行代码测试
%%timeit
total = 0
for i in range(1000):
total += i
# 性能剖析
%prun some_function()
```
阅读全文
相关推荐



















