小编典典

ipython和python之间的输出差异

python

据我了解,python将repr输出输出,但显然并非总是如此。例如:

在ipython中:

In [1]: type([])
Out[1]: list

In [2]: set([3,1,2])
Out[2]: {1, 2, 3}

在python中:

>>> type([])
<type 'list'>
>>> set([3,1,2])
set([1, 2, 3])

ipython对输出应用什么转换?


阅读 215

收藏
2020-12-20

共1个答案

小编典典

IPython使用代替方法repr或标准pprint模块IPython.lib.pretty.RepresentationPrinter.pretty打印输出

模块IPython.lib.pretty提供了RepresentationPrinter.pretty在后台使用的两个功能。

IPython.lib.pretty.pretty 函数返回对象的字符串表示形式:

>>> from IPython.lib.pretty import pretty
>>> pretty(type([]))
'list'

IPython.lib.pretty.pprint 函数打印对象的表示形式:

>>> from IPython.lib.pretty import pprint
>>> pprint(type([]))
list

IPython使用其自己的漂亮打印机,因为标准Pythonpprint模块“不允许开发人员提供自己的漂亮打印回调”。

2020-12-20