云驹博客

路漫漫其修远兮,吾将上下而求索。

0%

IPython

IPython

快捷键

按键 执行
TAB 自动补全
Ctrl + [P, ] 后向搜索命令历史中当前输入的文本开头的命令
Ctrl + [N, ] 前向搜索命令历史中当前输入的文本开头的命令
Ctrl + R 按行读取的反向历史搜索(部分匹配)
Ctrl + Shift + V 从剪贴板粘贴文本
Ctrl + C 中止当前正在执行的代码
Ctrl + A 将光标移动到行首
Ctrl + E 将光标移动到行尾
Ctrl + K 删除从光标开始至行尾的文本
Ctrl + U 清除当前行的所有文本
Ctrl + F 将光标向前移动一个字符
Ctrl + B 将光标向后移动一个字符
Ctrl + L 清屏

其它操作

  • 魔术命令

    %开始的命令

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # 执行文件代码
    %run app.py

    # 执行剪贴板代码
    %paste

    # 评估运行时间
    %timeit 123 + 456

    # 自动调试
    # 开启
    %pdb on
    # 关闭
    %pdb off
    • pdb命令

      命令 功能
      h(elp) 显示命令列表
      help command 显示command的文档
      c(ontinue) 恢复程序的执行
      q(uit) 退出调试器,不再执行任何代码
      b(reak) number 在当前文件的第number行设置一个断点
      b path/to/file.py:number 在指定文件的第number行设置一个断点
      s(tep) 单步进入函数调用
      n(ext) 执行当前行,并前进到当前级别的下一行
      u(p)/d(own) 在函数调用栈中向上或向下移动
      a(rgs) 显示当前函数的参数
      debug statement 在新的(递归)调试器中调用语句statement
      l(ist) statement 显示当前行,以及当前栈级别上的上下文参考代码
      w(here) 打印当前位置的完整栈跟踪(包括上下文参考代码)
  • 执行系统命令

    1
    2
    3

    In [1]: !pwd
    Out[1]: '/Users/quokka'
  • 内省、命名空间搜索

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    # 示例01(模糊搜索属性):
    In [1]: a = [1,2,3]
    Out[1]: [1, 2, 3]
    In [2]: a.*pp*?
    a.append

    # 示例02(打印相关信息):
    In [3]: a.append?
    Signature: a.append(object, /)
    Docstring: Append object to the end of the list.
    Type: builtin_function_or_method

    In [4]: a?
    Type: list
    String form: [1, 2, 3]
    Length: 3
    Docstring:
    Built-in mutable sequence.

    If no argument is given, the constructor creates a new empty list.
    The argument must be an iterable if specified.

    # 实例03(自定义函数,双`??`会打印函数体):
    In [5]: def func(a):
    ...: print(a)
    ...:

    In [6]: func??
    Signature: func(a)
    Docstring: <no docstring>
    Source:
    def func(a):
    print(a)
    File: ~/<ipython-input-2-4b77ce673b1b>
    Type: function