IPython
IPython:交互式的python命令行
安装:pip install ipython
使用:cmd输入ipython
使用起来和python解释器是一致的
tab键自动补全
ipython可以像linux那样使用tab键进行补全
内省
使用?可以查看变量或者函数等相关信息
- 变量?
- 函数??
还可以通过* + ? 达到模糊查找方法的目的
- np.*load*?
执行系统命令 !
!python 在开启一个python命令行
快捷键
- Ctrl-P 或上箭头键 后向搜索命令历史中以当前输入的文本开头的命令
- Ctrl-N 或下箭头键 前向搜索命令历史中以当前输入的文本开头的命令
- Ctrl-R 按行读取的反向历史搜索(部分匹配) 这条命令还是可以多用用
- Ctrl-Shift-v 从剪贴板粘贴文本
- Ctrl-C 中止当前正在执行的代码
- Ctrl-A 将光标移动到行首
- Ctrl-E 将光标移动到行尾
- Ctrl-K 删除从光标开始至行尾的文本
- Ctrl-U 清除当前行的所有文本译注12
- Ctrl-F 将光标向前移动一个字符
- Ctrl-b 将光标向后移动一个字符
- Ctrl-L 清屏
高级命令
命令 说明
%quickref 显示IPython的快速参考
%magic 显示所有魔术命令的详细文档
%debug 从最新的异常跟踪的底部进入交互式调试器
%hist 打印命令的输入(可选输出)历史
%pdb 在异常发生后自动进入调试器
%paste 执行剪贴板中的Python代码
%cpaste 打开一个特殊提示符以便手工粘贴待执行的Python代码
%reset 删除interactive命名空间中的全部变量/名称
%page OBJECT 通过分页器打印输出OBJECT
%run script.py 在IPython中执行一个Python脚本文件
%prun statement 通过cProfile执行statement,并打印分析器的输出结果
%time statement 报告statement的执行时间
%timeit statement 多次执行statement以计算系综平均执行时间。对那些执行时间非常小的代码很有用
%who、%who_ls、%whos 显示interactive命名空间中定义的变量,信息级别/冗余度可变
%xdel variable 删除variable,并尝试清除其在IPython中的对象上的一切引用
%logstart 开始记录日志
In [10]: %time li = [i+1 for i in range(10000000)] Wall time: 1.53 s In [11]: %time li = [i+1 for i in range(10000000)] Wall time: 2.05 s In [12]: %timeit li = [i+1 for i in range(10000000)] 1.58 s ± 289 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
使用历史命令:_, _输入编号