什么是IPython?可能很多人已经在用,却不知道它到底是什么。根据维基百科的解释:
IPython是一种基于Python的交互式解释器,提供了强大的编辑和交互功能。
IPython拥有:
-
满足你各种需求的交互式shell
-
火爆数据科学社区的Jupyter内核(供Jupyter Notebook使用)
-
对交互式数据可视化和GUI工具的完美支持
-
简单易用的高性能并行计算工具
IPython中的‘I’即代表交互的意思,所以IPython提供了丰富的工具,能更好地与python进行交互。
大家经常遇到的魔法命令,就是IPython的众多功能之一。
本文梳理IPython的50个用法,供Python爱好者参考。
注:前面说过IPython提供了jupyter内核,所以Jupyter Notebook是一个基于浏览器的IPython shell,支持IPython的所有功能,以下内容均在Jupyter Notebook环境中测试。
1. ?
打印IPython简介
在IPython中直接输入?
,可以打印出IPython的功能介绍
2. object ?
内省功能
在变量后面加上?
,可以打印出该变量的详细信息。例如图中一个列表对象,打印出该对象的类型、长度等信息。
3. object ??
内省功能
??
和?
功能相似,不过??
还可以查看函数或模块对象的源代码。
4. history
历史命令
在IPython中,执行history
或hist
命令能够查看历史输入。
5. tab自动补全
IPython支持tab键自动补全。
6. ! shell_command
执行shell命令
shell (windows里叫作cmd)表示使用文本与计算机进行交互的方式,在IPython中,shell命令前加上感叹号!
(英文输入法)就可以直接执行。如图使用ping检测百度网址。
7.魔法命令%和%%区别
魔法命令分为两种,一种是line magics,另外一种cell magics。Line magic是通过在前面加%,表示magic只在本行有效。Cell magic是通过在前面加%%,表示magic在整个cell单元有效。
8. %run
运行脚本
在IPython会话环境中,py文件可以通过%run
命令当做Python程序来运行,输入%run 路径+文件名称
即可。如图,e盘中有一py脚本test.py,在IPython中执行。