Я не использовал 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', но я не буду вдаваться в подробности. Вы можете читать документы так же хорошо, как я.