有没有办法让 IPython 控制台自动重新格式化复制的代码,例如,
In [131]: a = [1, 2, 3]
In [132]: a
Out[132]: [1, 2, 3]
使用标准 Python 提示符,即
>>> a = [1, 2, 3]
>>> a
[1, 2, 3]
动机是:
- 行号(也许还有额外的换行符)在这里没有意义。
- 标准格式很容易与 doctest 一起使用。
有趣的是,IPython 的 Qt 控制台同时提供“复制”和“复制(原始文本)”,“复制”的默认行为导致以下结果:
a = [1, 2, 3]
a
Out[132]: [1, 2, 3]
显然,可以实现某种自动重新格式化。有没有办法自定义这个功能?
我知道PromptManager
哪个可用于自定义显示的提示(例如, http: //nb.nathanamy.org/2012/09/terminal-productivity/)。但是,IPython 提示符(带有数字)在交互式会话中很有用。我只希望重新格式化复制的版本。