利用Python进行数据分析 - 第三章 ipython
标签: 读书笔记 python 数据分析
1. 启动ipython
cmd->ipython
2. TAB 自动完成
In: an<TAB>
an_apple and any
In: a = [1,2,3]
In: a.<TAB>
a.append a.extend a.insert a.remove a.sort
... ...
In: d:/<TAB>
d:/Program Files d:/Code
d:/Tools d:/DB
3. ? 内省
-
? 显示变量或方法的通用信息(包括DocString)
In: a?
Type: List
String Form: [1,2,3]
Length: 3
DocString:
list() -> new empty list
... ...
In: import datetime
In: datetime.t*?
datetime.time
datetime:timedelta
datetime:tzinfo
4. %run 命令,运行脚本文件
In: %run python_script.py arg1
#之后即可在此ipython交互环境直接访问脚本文件中的各import,函数和全局变量
#如需中断运行:Ctrl-C
5. %paste %cpaste 剪贴板(Ctrl-C中断)
6. 键盘快捷方式
命令 |
说明 |
Ctrl-R |
历史命令搜索(部分匹配) |
Ctrl-Shift-V |
从剪贴板中粘贴文本 |
上箭头 |
后向搜索历史命令中以当前输入的文本开头的命令 |
下箭头 |
前向搜索历史命令中以当前输入的文本开头的命令 |
Ctrl-L |
清屏 |
7. 魔术命令
行级魔术命令(line magic) |
说明 |
%quickref |
显示ipython的快速参考 |
%magic |
显示所有魔术命令的详细文档 |
%lsmagic |
列出所有魔术命令 |
%hist |
打印命令的输入历史 |
%paste |
粘贴并执行剪贴板中python代码 |
%debug |
从最新的异常跟踪的底部进入交互式调试器 |
%pdb |
在异常发生后自动进入调试器 |
%run script.py |
执行script.py脚本文件 |
%time statement |
报告statement的执行时间 |
%timeit statement |
多次执行statement以计算平均执行时间 |
%pdoc objName |
查看对象的pydoc |
%psource objName |
查看对象的源代码 |
%pdef funcName |
查看函数的声明 |
%pfile objName |
查看所在的源文件 |
8. 基于Qt的富GUI控制台
cmd->jupyter qtconsole
9. matplotlib集成模式打开ipython
cmd->ipython --pylab
进入ipython之后:
In: plot()
#将会另外打开一个GUI绘图窗口
10. 与操作系统交互
命令 |
说明 |
!cmd |
在ipython shell中执行系统命令cmd |
output=!cmd args |
执行cmd,并将输出保存到output中 |
%alias alias_name cmd |
为系统命令cmd定义别名 |
%cd directory |
改变当前工作目录 |
%pwd |
返回当前工作目录 |
%env |
以dict形式返回系统环境变量 |
&varName |
在系统命令中引用python变量(e.g In: !echo $str ) |
%bookmark bkmk directory |
建立目录directory的书签,之后便可In: %cd bkmk
|
11. 交互式调试 %debug
- 在运行python脚本之后,如果发生错误,使用%debug命令进入调试器
In: run script.py
**Error Traceback(most recent call last)
... ...
In: $debug
... ...
ipdb>
#输入u - up
#输入d - down
- 在运行python脚本时,使用run -d选项,会直接进入调试器
In: run -d script.py
Breakpoint 1 at script.py:1
NOTE: Enter 'c' at the ipdb> prompt to start your script.
ipdb> c
#之后便可使用各种ipdb的命令进行调试,如下:
#b line_number: 在line_number行设置断点
#c: continue,一般在设置断点之后,便可使用c命令,使代码运行到断点处
#n: step over,执行到下一行
#s: step into
#!variable_name: 查看变量variable_name的值
#h: 显示命令列表
#u(up)/d(down): 在函数调用栈中向上或向下移动
#a(rgs): 显示当前函数的参数
12. 测试代码的执行时间: %time %timeit
网友评论