安装依赖命令
# 性能分析工具
%pip install line_profiler
%pip install memory_profiler
# 加载扩展
%load_ext line_profiler
%load_ext memory_profiler
常用组合
# 性能测试组合
%timeit sum(range(1000)) # 快速基准测试
%prun my_function() # 详细性能分析
%memit my_function() # 内存使用分析
# 调试组合
%xmode Verbose # 详细错误信息
%pdb on # 自动进入调试
# 运行可能出错的代码...
%debug # 手动调试
# 日常开发组合
%whos # 查看当前变量
%history -n 20 # 查看最近命令
%run script.py # 运行脚本
%load_ext autoreload # 自动重载模块
%autoreload 2
魔法命令列表
| 命令 | 用途 | 使用示例 |
%time |
测量单次代码执行时间 |
%time sum(range(1000)) |
%%time |
测量多行代码单次执行时间 |
%%time
x = [i**2 for i in range(1000)]
sum(x) |
%timeit |
自动多次执行求平均时间 |
%timeit sum(range(1000)) |
%%timeit |
多行代码多次执行求平均 |
%%timeit
total = 0
for i in range(1000):
total += i |
%prun |
性能分析(函数调用统计) |
%prun my_function() |
%lprun |
逐行性能分析 |
%lprun -f my_function my_function() |
%memit |
测量内存使用量 |
%memit sum(range(1000000)) |
%mprun |
逐行内存分析 |
%mprun -f my_function my_function() |
%whos |
显示所有变量信息 |
%whos |
%who_ls |
显示变量名列表 |
%who_ls |
%pinfo |
显示对象基本信息 |
%pinfo pd.DataFrame |
%pinfo2 |
显示对象详细信息 |
%pinfo2 pd.DataFrame |
%debug |
进入事后调试模式 |
在异常后执行 %debug |
%pdb |
自动调试开关 |
%pdb on / %pdb off |
%xmode |
设置异常显示模式 |
%xmode Verbose / %xmode Plain |
%load |
加载外部文件代码 |
%load myscript.py |
%run |
运行外部Python脚本 |
%run myscript.py |
%store |
在会话间保存变量 |
%store my_var
%store -r my_var |
%history |
显示命令历史 |
%history -n 10 |
%recall |
重新执行历史命令 |
%recall 5 |
%matplotlib |
设置matplotlib后端 |
%matplotlib inline |
%reset |
清除所有变量 |
%reset -f |
%env |
环境变量操作 |
%env
%env MY_VAR=value |
%cd |
切换工作目录 |
%cd /path/to/dir |
%ls |
列出目录内容 |
%ls
%ls -l |
%pip |
包管理 |
%pip install package_name |
%conda |
Conda包管理 |
%conda install package_name |