首页 > 解决方案 > Jupyter Notebook 不同的显示方式

问题描述

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

  1. 通过使用print
  2. 通过使用display
  3. 只写变量名

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

标签: jupyter-notebookjupyter

解决方案


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

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

只需给出名称 - 默认值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']

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

display可以返回一个“显示”对象,但我不会在这里讨论。您可以尽我所能阅读文档。


推荐阅读