在Jupyter笔记本评估期间会发生什么?

时间:2016-08-03 10:48:48

标签: python jupyter-notebook

我一直以为Jupyter只是打印出一个物体的repr,但事实并非如此。

这是一个例子。如果我在笔记本上评估这个:

obj = type(2)
obj

我得到:int

如果我改为

print(obj)

我得到:<class 'int'>

那么:什么是Python指令来模拟笔记本在评估变量时的作用?

1 个答案:

答案 0 :(得分:1)

Jupyter / IPython使用了相当复杂的pretty printer。关于int的示例,它有一个printer for classes/type

基本上它的作用是获得课程&#39;通过cls.__qualname__(py3)或cls.__name__(py2&amp; 3)和模块cls.__module__命名,并将其打印为<module.name>。对于builtins,模块名称将被忽略。