Jupyter Notebook不同的显示方式

时间:2019-01-08 18:48:03

标签: jupyter-notebook jupyter

在Jupyter中似乎有3种显示输出的方式:

  1. 使用print
  2. 使用display
  3. 只需编写变量名

确切的区别是什么,尤其是2和3之间的区别是什么?

1 个答案:

答案 0 :(得分:1)

我没有使用display,但看起来它提供了很多控件。 print当然是标准的Python函数,具有自己的可能参数。

但是让我们在Ipython控制台会话中查看一个简单的numpy数组:

仅提供名称-默认out

In [164]: arr
Out[164]: array(['a', 'bcd', 'ef'], dtype='<U3')

这与该对象的repr输出相同:

In [165]: repr(arr)
Out[165]: "array(['a', 'bcd', 'ef'], dtype='<U3')"
In [166]: print(repr(arr))
array(['a', 'bcd', 'ef'], dtype='<U3')

看起来默认的display是相同的:

In [167]: display(arr)
array(['a', 'bcd', 'ef'], dtype='<U3')
另一方面,

print默认显示对象的str

In [168]: str(arr)
Out[168]: "['a' 'bcd' 'ef']"
In [169]: print(arr)
['a' 'bcd' 'ef']

因此,至少对于这样的简单情况,关键区别在于对象的reprstr之间。另一个区别是哪些动作会产生Out,而哪些不会。 Out[164]是一个数组。 Out[165](和168)是字符串。显示printdisplay,但不要在Out列表中放任何东西(换句话说,它们返回None)。

display可以返回一个'display'对象,但是在这里我不再赘述。您可以尽我所能阅读文档。