About IPython的使用方法和特点

ipython :一种交互式计算和开发环境

  • 安装ipython:
    D:\Software\Software Install\Python\Python36>pip install ipython

  • 启动ipython:
    D:\Software\Software Install\Python\Python36\Scripts>ipython

  • Tab 键自动完成提示:在IPython Shell中输入表达式时,只要按下Tab键,当前命名空间中任何与输入字符串相匹配的变量(对象、函数等)就会被自动匹配出来;Tab键自动完成功能不只可以用于搜索命名空间和自动完成对象或模块属性。当输入看上去像文件路径的时,按下Tab键即可以找出电脑文件系统中与之匹配的文件名,如果再结合魔术命令%run,将显著减少敲击键盘的次数。

  • 内省:在变量的前面或者后面加上一个问号(?)就可以将有关该对象的一些通用信息显示出来,这就叫做对象内省(object introspection)

  1. 如果对象是一个函数或者实例方法,则其有docstring(三重引号、文档字符串)也会被显示出来。
  2. 使用 function_name?还将显示出该函数的源代码。
  3. ? 还有一个用法,即搜索IPython命名空间,一些字符再配以通配符星号(*)即可以显示出所有与该通配符表达式相匹配的名称,例如,列出NumPy顶级命名空间中含有"load"的所有函数。
  • %run命令:在IPython会话环境中,所有的*.py文件都可以通过%run命令当做Python程序来运行。
  1. *.py脚本是在一个空的命名空间中运行的,当 %run *.py成功后,则文件中所定义的全部变量就可以在当前IPython Shell中访问了。
  2. 如果希望脚本能够访问在交互式IPython命名空间(interactive)中定义的变量,那就应该使用%run -i *.py
  • 中断正在执行的代码:Ctrl+C ,Ctrl+C会引发一个盘中断(KeyboardInterrupt),除一些非常特殊的情况外,绝大部分Python程序都将立即停止执行。

  • 执行剪贴板中的代码:使用%paste%cpaste这两个魔法函数。%paste可以承载剪贴板中的一切文本,并在shell中以整体形式执行;%cpaste它多出了一个用于粘贴代码的特殊提示符而已,并且可以在最终执行前,需要粘贴几次就粘贴几次。

  • 魔术命令(Magic Command)

  1. IPython有一些特殊命令,它们有的为常见任务提供便利,有的则使你能轻松控制IPython系统的行为。魔术命令是以百分号%为前缀的命令。
  2. 魔术命令可以看做运行在IPython系统中的命令行程序,它们大都还有一些“命令行选项”,使用?即可以查看其选项。
  3. 魔术命令默认是可以不带百分号使用的,只要没有定义与其同名的变量即可,这个技术叫做automagic,可以通过%automagic打开或者关闭。
  4. %quickref 显示IPython的快速参考;%magic显示显示所有魔术命令的详细文档。
  • 输入和输出变量:IPython会将输入和输出的引用保存在一些特殊的变量中。
  1. 最近的两个输出结果保存在_(一个下划线)和__(两个下划线)变量中。
  2. 输入的文本被保存在名为_iX的变量中,其中X表示输入行的行号;对应的输出保存在输出变量_X中,其中X表示输入行的行号。
  3. 记录输入和输出:执行%logstart即可以记录输入输出日志,配套的魔术命令%logstop、%logon、%logoff。
  • 与操作系统交互
  1. %+command
  2. 强制执行标识符感叹号(!)。
  • 目录书签系统:IPython有一个简单的目录书签系统,它能够保存常用目录的别名以便实现快速跳转。
    In [X]: %bookmark db /home/kylin/Dropbox(云存储、服务)
    In [X+1]:cd db

  • 软件开发工具

  1. 交互式调试器%debug命令将会调用那个“事后”调试器(pdb),并直接跳转到引发异常的那个栈帧(stack frame)。u(up)和d(down)
  2. 测试代码执行时间%time%timeit
  3. 基本性能测试%prun%run -p
  • ipython html Notebook:ipython notebook --pylab=inline
发布了71 篇原创文章 · 获赞 3 · 访问量 1503
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览