什么是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中执行。