Jupyter Notebook разные способы отображения - PullRequest
0 голосов
/ 08 января 2019

Кажется, есть 3 способа отображения вывода в Jupyter:

  1. Используя print
  2. Используя display
  3. Просто записав имя переменной

Какая разница, особенно между цифрами 2 и 3?

1 Ответ

0 голосов
/ 08 января 2019

Я не использовал 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) - строки. print и display отображаются, но ничего не помещаются в список Out (другими словами, они возвращают None).

display может вернуть объект 'display', но я не буду вдаваться в подробности. Вы можете читать документы так же хорошо, как я.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...