zoukankan      html  css  js  c++  java
  • ipython

    ipython为什么这么多人用?

    很大的原因在于它有以下几大特性:

    1. 相较于python解释器来说,它能通过 tab键来代码补全

    2.也有可以在浏览器上直接跑脚本的,基于网页动态交互的 notebook

    3.还有强大的内省(Introspection)功能:

        可以在对象后加“?”,就可以看到所有有关对象的相关信息,比如对象类型,对象的有关类的 文档等等

     在对像后加"??“,可以直接跳转到引用到的源代码

     可以用 通配符"object.*load*?"查找 空间内的namespace

    4.用%run命令,运行你所在位置的 python脚本,<Ctrl-C>中断

    5.可以从粘贴板上执行代码(<Ctrl-Shift-V>),以及%paste 和 %cpaste命令,也有IDE有关它的扩展

    6.快捷键,Ctrl-a,Ctrl-b,Ctrl-e,Ctrl-f,Ctrl-u,Ctrl-k

      Command       Description
      Ctrl-P or up-arrow   Search backward in command history for commands starting with currently-entered text
      Ctrl-N or down-arrow   Search forward in command history for commands starting with currently-entered text
      Ctrl-R         Readline-style reverse history search (partial matching)
      Ctrl-Shift-V       Paste text from clipboard
      Ctrl-C         Interrupt currently-executing code
      Ctrl-A         Move cursor to beginning of line
      Ctrl-E         Move cursor to end of line
      Ctrl-K         Delete text from cursor until end of line
      Ctrl-U         Discard all text on current line
      Ctrl-F         Move cursor forward one character
      Ctrl-B         Move cursor back one character
      Ctrl-L         Clear screen

    7.%xmode命令看到有关程序错误的更多信息

    8.%timeit命令分析每条语句的执行速度

    9.%reset 清空用户的所有定义

      

    Command     Description
    %quickref     Display the IPython Quick Reference Card
    %magic      Display detailed documentation for all of the available magic commands
    %debug      Enter the interactive debugger at the bottom of the last exception traceback
    %hist       Print command input (and optionally output) history
    %pdb       Automatically enter debugger after any exception
    %paste      Execute pre-formatted Python code from clipboard
    %cpaste      Open a special prompt for manually pasting Python code to be executed
    %reset      Delete all variables / names defined in interactive namespace
    %page     OBJECT Pretty print the object and display it through a pager
    %run     script.py Run a Python script inside IPython
    %prun     statement Execute statement with cProfile and report the profiler output
    %time     statement Report the execution time of single statement
    %timeit     statement Run a statement multiple times to compute an emsemble average execution time. Useful for
    timing code with very short execution time
    %who, %who_ls, %whos   Display variables defined in interactive namespace, with varying levels of information / verbosity
    %xdel       variable Delete a variable and attempt to clear any references to the object in the IPython internals

    %gui

    10.还有 丰富的Qt-based控制台(ipython qtconsole --pylab=inline)

    11.Matplotlib Integration and Pylab Mode($ ipython --pylab):与Matplotlib有更好的交互

    12.命令历史,可以对命令进行操作(<Ctrl-R>:搜索历史记录,),可以将输入的命令存入log文件中。

    13.可以和你的系统交互(用类似 linux的命令)

    14.可以收藏 系统文件价,下次可以直接跳转到相应目录

    15.开发工具:

      可交互debugger(%pdb):

        Command         Action

        h(elp)           Display command list
        help            command Show documentation for command
        c(ontinue)         Resume program execution
        q(uit)           Exit debugger without executing any more code
        b(reak)           number Set breakpoint at number in current file
        b path/to/file.py:number   Set breakpoint at line number in specified file
        s(tep)           Step into function call
        n(ext)           Execute current line and advance to next line at current level
        u(p) / d(own)       Move up/down in function call stack
        a(rgs)         Show arguments for current function
        debug statement     Invoke statement statement in new (recursive) debugger
        l(ist) statement     Show current position and context at current level of stack
        w(here)         Print full stack trace with context at current position

    16.测运行函数花费的时间(%prun -l 7 -s cumulative run_experiment()),不同于cprofile接py文件($ python -m cProfile -s cumulative cprof_example.py)

    17.一行一行的剖析函数(需要添加line_profiler库,使用如下%lprun -f add_and_sum add_and_sum(x, y))

    注意:

    1.import函数后,修改了,需要reload(function)

  • 相关阅读:
    Node.js安装及环境配置之Windows篇
    [转]英语论文写作技巧-1
    [转]windows下安装python MySQLdb及问题解决
    SourceTree使用SSH克隆码云项目
    [吴恩达机器学习笔记]16推荐系统5-6协同过滤算法/低秩矩阵分解/均值归一化
    [吴恩达机器学习笔记]16推荐系统3-4协同过滤算法
    [吴恩达机器学习笔记]16推荐系统1-2基于内容的推荐系统
    [吴恩达机器学习笔记]15非监督学习异常检测7-8使用多元高斯分布进行异常检测
    如何求协方差矩阵[转载]
    [吴恩达机器学习笔记]15非监督学习异常检测4-6构建与评价异常检测系统
  • 原文地址:https://www.cnblogs.com/leemiracle/p/7040887.html
Copyright © 2011-2022 走看看