运行IPython命令行
通过IPython命令启动。在IPython命令行中,可以输入命令并执行,如果只输入一个变量名,则代表打印该变量,且会做格式化的处理,比标准解释器更可读。
运行Jupyter notebook
内核建立在IPython系统上的notebook,大多数情况下会打开默认浏览器。在Jupyter notebook中可以使用IPython命令,且基本执行方式也和IPython相似。可以将Jupyter notebook上的代码保存为.ipynb文件。
Tab补全
通过Tab可以补全未输入完全的表达式,或者提供对象可选方法,或者模块可选方法,或者路径补全,或者参数补全等。在Jupyter notebook和新版IPython中,会通过下拉框的方法进行提示。
内省
通过在变量前后使用问号,打印对象的概要信息,或者打印函数的注释文档,还可以用来搜索模块的命名空间。
%run命令
通过%run命令可以导入文件中的代码,并运行文件。在运行之后,可以在接下来的地方使用文件中定义的变量。在Jupyter notebook中,可以用%load导入代码。
在解释其中运行的时候,如果想要终止代码执行,可以通过快捷键ctrl+c结束命令。
执行剪贴板中的程序
在IPython中,在复制了命令情况下,执行%paste命令可以直接执行剪贴板中的命令,执行%cpaste命令会添加冒号,同时允许粘贴多段代码。在Jupyter notebook中,可以直接在代码单元中粘贴运行。
终端快捷键
快捷键 |
描述 |
---|---|
ctrl+P 或 向上箭头 | 以当前输入内容开始,向后搜索历史命令 |
ctrl+N 或 向下箭头 | 以当前输入内容开始,向前搜索历史命令 |
ctrl+R | 按行读取的反向历史搜索(部分匹配) |
ctrl+shift+v | 从剪贴板粘贴文本 |
ctrl+C | 中断当前正在执行的代码 |
ctrl+A | 将光标移动到本行起始位置 |
ctrl+E | 将光标移动到本行结束位置 |
ctrl+K | 删除光标后本行的所有内容 |
ctrl+U | 删除当前行 |
ctrl+F | 将光标向前移动一个字符 |
ctrl+B | 将光标向后移动一个字符 |
ctrl+L | 清除本屏内容 |
关于魔术命令
以%为前缀的命令,作为IPython的特殊命令,没有内建到Python中去。通过魔术命令可以提升在IPython解释器中执行代码的效率。
命令 | 描述 |
---|---|
%quickref | 显示IPython快速参考卡 |
%magic | 显示所有可用魔术命令的详细文档 |
%debug | 从最后发生报错的底部进入交互式调试器 |
%hist | 打印命令输入(也可以打印输出)命令 |
%pdb | 出现任意报错后自动进入调试器 |
%paste | 从剪贴板中执行已经预先格式化的Python代码 |
%cpaste | 打开一个特殊提示符,手动粘贴待执行的Python代码 |
%reset | 删除交互式命名空间中所有的变量/名称 |
%page OBJECT | 通过分页器更美观地打印显示一个对象 |
%run script.py | 在IPython中运行一个Python脚本 |
%prun statement | 使用CProfile执行语句,并报告输出 |
%time statement | 报告单个语句的执行时间 |
%timeit statement | 多次执行单个语句计算平均执行时间;在估算代码最短执行时间时有用 |
%who, %who_ls., %whos | 根据不同局别的信息/详细程度,展示交互命名空间中定义的变量 |
%xdel variable | 在IPython内部删除一个变量,清除相关的引用 |
matplotlib集成
在IPython命令行中,运行%matplotlib可以生成多个绘图窗口而不干扰控制台会话。在Jupyter notebook中,使用%matplotlib inline创建内联的绘图。