25个关于IPython的使用技巧上

什么是IPython?可能很多人已经在用,却不知道它到底是什么。根据维基百科的解释:

IPython是一种基于Python的交互式解释器,提供了强大的编辑和交互功能。

IPython拥有:

  1. 满足你各种需求的交互式shell
  2. 火爆数据科学社区的Jupyter内核(供Jupyter Notebook使用)
  3. 对交互式数据可视化和GUI工具的完美支持
  4. 简单易用的高性能并行计算工具

25个关于IPython的使用技巧上

IPython中的‘I’即代表交互的意思,所以IPython提供了丰富的工具,能更好地与python进行交互。
大家经常遇到的魔法命令,就是IPython的众多功能之一。
本文梳理IPython的50个用法,供Python爱好者参考。

注:前面说过IPython提供了jupyter内核,所以Jupyter Notebook是一个基于浏览器的IPython shell,支持IPython的所有功能,以下内容均在Jupyter Notebook环境中测试。

1. ?打印IPython简介

在IPython中直接输入?,可以打印出IPython的功能介绍25个关于IPython的使用技巧上

2. object ?内省功能

在变量后面加上?,可以打印出该变量的详细信息。例如图中一个列表对象,打印出该对象的类型、长度等信息。25个关于IPython的使用技巧上

3. object ??内省功能

???功能相似,不过??还可以查看函数或模块对象的源代码。25个关于IPython的使用技巧上

4. history历史命令

在IPython中,执行historyhist命令能够查看历史输入。25个关于IPython的使用技巧上

5. tab自动补全

IPython支持tab键自动补全。25个关于IPython的使用技巧上

6. ! shell_command执行shell命令

shell (windows里叫作cmd)表示使用文本与计算机进行交互的方式,在IPython中,shell命令前加上感叹号!(英文输入法)就可以直接执行。如图使用ping检测百度网址。25个关于IPython的使用技巧上

7.魔法命令%和%%区别

魔法命令分为两种,一种是line magics,另外一种cell magics。Line magic是通过在前面加%,表示magic只在本行有效。Cell magic是通过在前面加%%,表示magic在整个cell单元有效。

8. %run运行脚本

在IPython会话环境中,py文件可以通过%run命令当做Python程序来运行,输入%run 路径+文件名称即可。如图,e盘中有一py脚本test.py,在IPython中执行。25个关于IPython的使用技巧上25个关于IPython的使用技巧上

9.%timeit测量代码运行时间

IPython使用魔法命令%timeit来测量单行代码的运行时间。25个关于IPython的使用技巧上

10.%%timeit测量代码运行时间

%%timeit用来测量整个单元格代码的运行时间.25个关于IPython的使用技巧上

11. %pwd显示工作路径

该魔法命令用来显示当前工作目录的路径。25个关于IPython的使用技巧上

12. %matplotlib inline显示图像

在notebook中绘制图像时,使用%matplotlib inline命令可以将图表直接嵌入到notebook中,方便查看。25个关于IPython的使用技巧上

13. %conda安装第三方库

%conda install pkgs命令用于在IPython中安装python第三方库。25个关于IPython的使用技巧上

14. %pylab交互式计算

%pylab 魔法命令可以使numpy和matplotlib中的科学计算功能生效,这些功能被称为基于向量和矩阵的高效操作,交互可视化特性。它能够让我们在控制台进行交互式计算和动态绘图。25个关于IPython的使用技巧上

15. %quickref查看参考

%quickref用来查看IPython的特定语法和魔法命令参考。25个关于IPython的使用技巧上

16. %ls显示目录内容

%ls path命令可以用来显示特定目录下的内容。25个关于IPython的使用技巧上

17. 通配符*

使用通配符*?可以模糊查询方法名及属性。25个关于IPython的使用技巧上

18. %cd修改目录

%cd命令可以修改当前工作目录。

19. _打印前输出结果

使用一个下划线 _ 获取前一个输出结果,它是个变量,实时更新的。使用两个下划线 __可以获取倒数第二个输出,使用三个下划线 ___ 获取倒数第三个输出(没有输出的命令行不计入在内,只支持前三个输出结果)。25个关于IPython的使用技巧上25个关于IPython的使用技巧上

20. ;抑制输出

在语句后面加上;,不显示输出结果。25个关于IPython的使用技巧上

21. %debug交互式调试器

%debug命令支持从最新的异常跟踪的底部进入交互式调试器。在ipdb调试模式下能访问所有的本地变量和整个栈回溯。使用u和d向上和向下访问栈,使用q退出调试器。在调试器中输入?可以查看所有的可用命令列表。25个关于IPython的使用技巧上

22. %pdb交互式调试器

%pdb同样用于启动交互式调试器,不过支持对所有的异常进行调试。你需要事先启动%pdb命令,之后对每一个异常都会进行调试。25个关于IPython的使用技巧上

23. %run -d交互式调试器

%run -d用于对脚本进行调试。25个关于IPython的使用技巧上

25个关于IPython的使用技巧上

24. %pycat语法高亮

%pycat filename用语法高亮显示一个python文件(不用加.py后缀名)。25个关于IPython的使用技巧上25个关于IPython的使用技巧上

25. %load加载代码

%load命令用于将脚本代码加载到当前cell。25个关于IPython的使用技巧上