IPython使用技巧
目录
1. ?打印IPython简介
2. ?快捷功能
3. ??快捷功能
4. history历史命令
5. tab自动补全
6. !执行shell命令
7.%和%%魔法命令区别
8. %run运行脚本
9.%timeit测量代码运行时间
10.%%timeit测量代码运行时间
11. %pwd显示工作路径
12. %matplotlib inline显示图像
13. %conda安装第三方库
14. %pylab交互式计算
15. %quickref查看参考
16. %ls显示目录内容
17. *通配符
18. %cd修改目录
19. _打印前输出结果
20. ;抑制输出
21. %debug交互式调试器
22. %pdb交互式调试器
23. %run -d交互式调试器
24. %pycat语法高亮
25. %load加载代码
26. %macro定义宏
27. %notebook导出notebook
28. %pdef打印构造信息
29. %pdoc打印文档
30. %precision浮点数精度
31. %xdel删除变量
32. %who显示变量
33. %whos显示变量
34. %save保存cell
35. %reset重置
36. %rerun执行前代码
37. %%HTML渲染HTML
38. %%javascript运行Javascript
39. %%latex渲染LaTeX
40. %%markdown渲染markdown
41. %%writefile写入文件
42. %bookmark保存书签
43. %paste粘贴代码块
44. %magic获取魔法命令列表
45. In和Out
46. %xmode控制异常
47. jupyter qtconsole
48. IPython导航快捷键
49. IPython文本输入快捷键
50. 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. ?快捷
功能
在变量后面加上?
,可以打印出该变量的详细信息。
下图中一个列表对象,打印出该对象的类型、长度等信息。
3. ??
快捷功能
??
和?
功能相似,不过??
还可以查看函数或模块对象的源代码。
4. history
历史命令
在IPython中,执行history
或hist
命令能够查看历史输入。
5. tab自动补全
IPython支持tab键自动补全。
6. !
执行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中执行。
9.%timeit
测量代码运行时间
IPython使用魔法命令%timeit
来测量单行代码的运行时间。
10.%%timeit
测量代码运行时间
%%timeit
用来测量整个单元格代码的运行时间.
11. %pwd
显示工作路径
该魔法命令用来显示当前工作目录的路径。
12. %matplotlib inline
显示图像
在notebook中绘制图像时,使用%matplotlib inline
命令可以将图表直接嵌入到notebook中,方便查看。
13. %conda
安装第三方库
%conda install pkgs
命令用于在IPython中安装python第三方库。
14. %pylab
交互式计算
%pylab
魔法命令可以使numpy和matplotlib中的科学计算功能生效,这些功能被称为基于向量和矩阵的高效操作,交互可视化特性。它能够让我们在控制台进行交互式计算和动态绘图。
15. %quickref
查看参考
%quickref
用来查看IPython的特定语法和魔法命令参考。
16. %ls
显示目录内容
%ls path
命令可以用来显示特定目录下的内容。
17. *
通配符
使用通配符*?
可以模糊查询方法名及属性。
18. %cd
修改目录
%cd
命令可以修改当前工作目录。
19. _
打印前输出结果
使用一个下划线 _
获取前一个输出结果,它是个变量,实时更新的。使用两个下划线 __
可以获取倒数第二个输出,使用三个下划线 ___
获取倒数第三个输出(没有输出的命令行不计入在内,只支持前三个输出结果)。
20. ;
抑制输出
在语句后面加上;
,不显示输出结果。
21. %debug
交互式调试器
%debug
命令支持从最新的异常跟踪的底部进入交互式调试器。在ipdb调试模式下能访问所有的本地变量和整个栈回溯。使用u和d向上和向下访问栈,使用q退出调试器。在调试器中输入?可以查看所有的可用命令列表。
22. %pdb
交互式调试器
%pdb
同样用于启动交互式调试器,不过支持对所有的异常进行调试。你需要事先启动%pdb
命令,之后对每一个异常都会进行调试。
23. %run -d
交互式调试器
%run -d
用于对脚本进行调试。
24. %pycat
语法高亮
%pycat filename
用语法高亮显示一个python文件(不用加.py后缀名)。
25. %load
加载代码
%load
命令用于将脚本代码加载到当前cell。
26. %macro
定义宏
%macro taskname n1 n2...
用来定义宏,并给宏命名,执行指定的代码行。执行name就是执行n1 n2...这些代码。
27. %notebook
导出notebook
%notebook path
用于导出当前notebook内容到指定ipynb文件中。
28. %pdef
打印构造信息
%pdef
命令用来打印类、函数的构造信息。
29. %pdoc
打印文档
%pdoc
命令用来打印对象的文档字符串。
30. %precision
浮点数精度
%precision
命令用来设置浮点数精度,可添加具体参数,无参数则默认精度。
31. %xdel
删除变量
%xdel
命令用于删除变量,并尝试清楚其在IPython中的对象上的一切引用。
32. %who
显示变量
%who
命令用于显示当前所有变量,你也可以指定显示变量的类型。
33. %whos
显示变量
%whos
命令同样用于显示当前变量,但提供的信息更加丰富。
34. %save
保存cell
%save path n1 n2..
命令用于将指定cell代码保存到指定的py文件中。
35. %reset
重置
%reset -f
命令用于删除定义的所有变量,如果不指定参数-f
,则需要确认后再重置。
36. %rerun
执行前代码
%rerun
命令用于执行之前的代码,可以指定历史代码行,默认最后一行。
37. %%HTML
渲染HTML
%%HTML
命令用于将单元格渲染为HTML输出。
38. %%javascript
运行Javascript
%%javascript
命令用于运行含有JavaScript代码的cell。
39. %%latex
渲染LaTeX
%%latex
命令用于将LaTeX语句渲染为公式,LaTeX是一种基于ΤΕΧ的排版系统。
40. %%markdown
渲染markdown
%%markdown
命令用于将markdown文本渲染为可视化输出。
41. %%writefile
写入文件
%%writefile
命令用于将单元格内容写入到指定文件中,文件格式可为txt、py等。
42. %bookmark
保存书签
%bookmark
命令能够保存常用目录的别名,以便实现快速跳转,书签能够持久化保存。
43. %paste
粘贴代码块
当你使用 IPython 解释器时,有件事经常让你头疼,那就是粘贴多行代码块可能会导致不可预料的错误,尤其是其中包含缩进和解释符号时。 使用%paste
命令能够直接执行剪切板中的python代码块。
44. %magic
获取魔法命令列表
%magic
用于获取所有魔法命令及其用法。
45. In
和Out
常会看到IPython 中的In[1]:
/Out[1]:
形式的提示,它们并不仅仅是好看的装饰形式,还是包含输入、输出的变量。 In 对象是一个列表,按照顺序记录所有的命令。 Out 对象不是一个列表,而是一个字典,它将输入数字映射到相应的输出(如果有的话)
46. %xmode
控制异常
%xmode
命令用于控制异常输出的模式。
47. jupyter qtconsole
jupyter qtconsole 是ipython团队基于qt框架开发的一个GUI控制台。 它具有富文本编辑功能,既能够在里面实现内嵌图片、多行编辑、语法高亮等。
48. IPython导航快捷键
快捷键 |
动作 |
---|---|
Ctrl + a |
将光标移到本行的开始处 |
Ctrl + e |
将光标移到本行的结尾处 |
Ctrl + b(或左箭头键) |
将光标回退一个字符 |
Ctrl + f(或右箭头键) |
将光标前进一个字符 |
49. IPython文本输入快捷键
快捷键 |
动作 |
---|---|
Backspace 键 |
删除前一个字符 |
Ctrl + d |
删除后一个字符 |
Ctrl + k |
从光标开始剪切至行的末尾 |
Ctrl + u |
从行的开头剪切至光标 |
Ctrl + y |
yank(即粘贴)之前剪切的文本 |
Ctrl + t |
transpose(即交换)前两个字符 |
50. IPython命令历史快捷键
快捷键 |
动作 |
---|---|
Ctrl + p(或向上箭头) |
获取前一个历史命令 |
Ctrl + n(或向下箭头) |
获取后一个历史命令 |
Ctrl + r |
对历史命令的反向搜索 |
IPython使用技巧相关推荐
- ipython 提示python已停止运行_你可能不知道的iPython使用技巧
1个tab键 tab键用于方法或者属性补全,从当前命令空间搜索: tab键可用于当前工作目录存在的文件和目录补全: 2个符号 ?:只能放在名字最后,查看详细信息.??可以查看源代码(如果有): * : ...
- 【转】iPython入门技巧
[转]http://www.cnblogs.com/cuiyubo/p/6823478.html 学习<利用python进行数据分析> 第三章 IPython:一种交互式计算和开发环境的笔 ...
- Python Kwant孤立体系本征态计算
导入模块 import kwant # 画图设置模块 %run matplotlib_setup.ipy# 线性代数特征值求解模块 import scipy.linalg as la 设置体系 # 晶 ...
- 深度学习框架PyTorch入门与实践:第二章 快速入门
本章主要介绍两个内容,2.1节介绍如何安装PyTorch,以及如何配置学习环境:2.2节将带领读者快速浏览PyTorch中主要内容,给读者一个关于PyTorch的大致印象. 2.1 安装与配置 2.1 ...
- IPython的一些使用技巧
总第58篇 关于IPython的使用技巧有很多,这里只是梳理了几个常用的以及我目前遇到过的,其他的技巧还没使用过,所以就没有列出来. 01|Tab键自动完成: 在shell中输入表达式时,只要按下Ta ...
- django ipython shell_希望能早点了解的Django性能优化技巧
编者注:原文发表于Medium, 作者Ryley Sill, 大江狗翻译整理,原文链接在本文结尾.本文值得收藏天天刷,可以帮你避免写出糟糕的代码. 我最近通过Django建立了Carta的场景建模平台 ...
- 50个关于IPython的使用技巧,get起来!
关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 什么是IPython?可能很多人已经在用,却不知道它到底是什么.根据维基百科的解释 ...
- ipython notebook_50个关于IPython的使用技巧,get起来!
什么是IPython?可能很多人已经在用,却不知道它到底是什么.根据维基百科的解释: IPython是一种基于Python的交互式解释器,提供了强大的编辑和交互功能. IPython拥有: 满足你各种 ...
- PyCharm使用技巧(五):在PyCharm中使用IPython / Jupyter Notebook
PyCharm v2018.2最新版本下载 在PyCharm中使用IPython / Jupyter Notebook 在你开始之前 在执行本教程的任务之前,请确保满足以下先决条件: 您已经创建了一个 ...
最新文章
- Redis 核心篇:唯快不破的秘密
- 越小越好:为什么电子器件都这么小巧玲珑?
- Qt Creator 创建优化的3D场景
- PID控制器开发笔记之一:PID算法原理及基本实现
- 机器学习的未来——深度特征融合
- java ocsp请求_java – 客户端证书上的OCSP吊销
- 地图定位的坐标和mapview中显示的当前位置信息不一致
- Romoting 通信DEMO(整理)
- live555学习之基本类介绍及计划任务深度探讨
- 181112每日一句
- Windows 配置libjpeg-turbo并在python中调用
- 三十、在实践中培养和选拔干部(第1版)
- 腾讯防水墙php接入,PHP实现腾讯防水墙验证码校验
- 工商银行网银U盾在win7 64位操作系统无法使用的问题
- 重心法选址 matlab程序,Excel重心法选址计算题的详细步骤
- 00截断原理核心分析(重点)
- PPT转换为视频_ppt2dvd-pro
- 遍历读取文件夹下的所有文件
- lintcode-最近公共祖先
- 使用WinGate代理服务器使局域网连接到Internet