如何在IPython中使用管道

McB*_*den 16 python scroll ipython pager ipython-magic

在Linux终端中,当一个命令的输出太长而无法在一个页面中读取时,我可以这样做:

cat file | less
Run Code Online (Sandbox Code Playgroud)

这样我就可以读取并向上和向下滚动cat文件的输出.

我怎么能在IPython中做到这一点?

例如,我试过这个并没有用:

whos | less
Run Code Online (Sandbox Code Playgroud)

我最初的问题是,whos通过Shift + Page Up来看,输出太多了,我不想更改滚动缓冲区.

Sve*_*ach 22

在IPython中,您可以使用标准寻呼机(通常)%page obj来显示对象.或者,您可以增加终端的滚动缓冲区,这在任何情况下都可能很方便.objless

%page obj - 显示对象类似于IPython默认显示(类似repr),如果输出大小需要,使用寻呼机

%page -r obj - 如果尺寸需要,使用寻呼机显示类似于打印的对象

%page只能采用普通名称或属性引用.它无法评估任意表达式,但您可以使用临时变量来解决此限制问题

tmp = ex * pr + ess - ion
%page tmp
Run Code Online (Sandbox Code Playgroud)