一、Tab补全
在shell中输入表达式,按下Tab,会搜索已输入变量(对象、函数等等)的命名空间:
除了补全命名、对象和模块属性,Tab还可以补全其它的。当输入看似文件路径时 (即使是Python字符串),按下Tab也可以补全电脑上对应的文件信息:
另外,tab补全可以补全函数的关键词参数(包括等于号=)。
二、自省
在变量前后使用问号?,可以显示对象的信息
这可以作为对象的自省。如果对象是一个函数或实例方法,定义过的文档字符串,也会显示出信息。
使用??会显示函数的源码:
三、%run命令
你可以用 %run 命令运行所有的Python程序。
假设再当前程序的目录下有一个test.py的python程序,我们可以通过如下方式运行它:
%run test.py
如果一个Python脚本需要命令行参数(在 sys.argv 中查找),可以在文件路径之后传递,就像在命令行上运行一样。
笔记:如果想让一个脚本访问IPython已经定义过的变量,可以使用 %run -i 。
在Jupyter notebook中,你也可以使用 %load ,它将脚本导入到一个代码格中:
四、从剪贴板执行程序
如果使用Jupyter notebook,你可以将代码复制粘贴到任意代码格执行。最简单的方法是使用 %paste 和 %cpaste 函数。
- %paste 可以直接运行剪贴板中的代码。
- %cpaste 功能类似,但会给出一条提示
五、键盘快捷键
六、魔术命令
IPython中特殊的命令(Python中没有)被称作“魔术”命令。这些命令可以使普通任务更便捷,更容易控制IPython系统。魔术命令是在指令前添加百分号%前缀。例如,可以用 %timeit (这个命令后面会详谈)测量任何Python语句,例如矩阵乘法,的执行时间:
魔术命令可以被看做IPython中运行的命令行。许多魔术命令有“命令行”选项,可以通过?查看:
魔术函数默认可以不用百分号,只要没有变量和函数名相同。这个特点被称为“自动 魔术”,可以用 %automagic 打开或关闭。
一些魔术函数与Python函数很像,它的结果可以赋值给一个变量:
IPython的文档可以在shell中打开,我建议你用 %quickref 或 %magic 学习下所有特殊命令