原文地址:http://blog.just4fun.site/learning-ipython.html
"?" 和 "??" 是 IPython 中最常用的命令。
和shell交互
- 在shell中使用python变量,加上$
folder = 'data' , mkdir $folder
- !command ,执行shell命令
path = "/var/www"
!echo $path
> /var/www
目录/书签
- %pwd: 显示当前工作目录。
- %cd: 切换工作目录。
- %bookmark: 工作目录书签。 (永久?) cd 和 -
bookmark 配合起来用,非常方便。
%bookmark test #为当前目录定义书签
%bookmark www /var/www #为其他目录定义书签
%bookmark -l # 显示书签列表
%bookmark -d text #删除书签
cd -b www #使用书签跳转,可省略 -b
书签跟别名的区别在于,它们会被自动持久化(写到.ipython里?)
edit
- edit xx 进入文本 退出后执行文本中代码 默认使用vim,这样就可以跟外部文件沟通啦
edit hello.py
run hello
给ipython edit指定编辑器
eg:(我的mac下)
export EDITOR="/usr/local/bin/vim”
使编辑生效
reload(hello)
历史
- %history: 显示历史。
- %hist: %history 别名。
- %dhist: 显示工作目录历史。
- %clear: 清除历史数据。
保存
save: 保存输入命令到文件。
可以将多个范围的输入数据保存到文件中。通常用于将交互环境中写的测试代码保存成源码文件。
%save -r test.txt 33-34 36
保存33-34(闭区间)以及36行到当前目录下test.txt文件里
参数 -a 添加到结尾
自动设置ipython环境
写好ipython_context.py
run ipython_context.py
,相关语句被导入执行,在上下文中
dir()查看上下文变量
执行
- %bg: 使用独立线程在后台执行。
- %rep: 获取上一次命令的输出,或提取某个历史命令。
- %run: 用来执行一个脚本,并将相关对象导入交互环境上下文。使用起来类似于熟悉的
python test.py
- run命令还可以附加选项,常用的有-t选项,这个会在脚本执行完后,打印出执行的cpu timings。如果指定了-t选项,后面可以跟一个-Nx,x代表一个数字。表示重复执行x次。
- 还有一个-p选项,这个选项会开启python profiler,从而打印出详细的执行时间、函数调用等等信息供优化参考。
- %runlog: 执行记录文件中命令。这对于 "恢复现场" 是非常有帮助地。
记录
- %logstart: 启动记录器。
- %logon: 开始记录。
- %logoff: 暂停记录。
- %logstate: 查看记录状态。
- %logstop: 关闭记录器。
首先需要用 %logstart 启动记录器,中间可以随时使用 %logon/%logoff 启动或暂停,末了别忘了关闭记录器,确保记录信息写到磁盘文件中。
%logstart 启动后会连同该命令之前的历史记录一起保存,因此要想有个干净起点的话,最好调用 %clear 清理现场
显示
- %p: Python print 函数的缩写。
- %pfile: 查看对象所在源码文件。
- %pycat: 查看源代码文件。
搜索
- %psearch: 在当前上下文的命名空间中进行模糊搜索。
- %psearch -i t.S 其中 参数 -i 忽略大小写
输入 CTRL + R 搜索历史命令
测试
- %prun: 使用 profile 获取代码执行的性能统计。
- %time: 获取代码执行时间。
- %timeit: 通过多次循环,获得最佳的执行时间评测。 这个命令用来测试一条命令执行的时间,一般而且,会重复100次运行这个命令,然后取出最好的3个结果取平均值。
- %timeit [x*x for x in range(100000)]
调试 - %debug: 激活交互调试模式。
- %pdb: 激活 pdb 调试模式,在引发异常时自动切入 pdb 调试命令行。
配置
- %autoindent: 自动缩进开关。
- %automagic: 打开时可省略 %magic 前的百分号。
- %colors: 彩色方案。
第一次运行ipython时会自动生成配置目录 $HOME/.ipython
其他
- %reset: 重置 IPython,清理相关环境对象,但历史信息被保留。