iPython中双下划线和三下划线的用途是什么?

iPython中双下划线和三下划线的用途是什么?,ipython,Ipython,据我所知,standalone\uuu仅检索最后一个控制台输出,双下划线\u检索之前的输出,三下划线\u从最后一个控制台输出中获取第三个输出。这是一个有趣的功能,但乍一看似乎毫无用处 当我不需要名字时,我使用\uu作为变量占位符,但是除了\u和\u之外,还有其他用法吗?还有,为什么没有四重下划线或更多 这只适用于iPython,普通的python 2.7解释器显示除单下划线以外的任何错误 standalone(独立)仅检索最后一个控制台输出 不是“控制台输出”,而是实际结果值,即对象本身: &g

据我所知,standalone
\uuu
仅检索最后一个控制台输出,双下划线
\u
检索之前的输出,三下划线
\u
从最后一个控制台输出中获取第三个输出。这是一个有趣的功能,但乍一看似乎毫无用处

当我不需要名字时,我使用
\uu
作为变量占位符,但是除了
\u
\u
之外,还有其他用法吗?还有,为什么没有四重下划线或更多

这只适用于iPython,普通的python 2.7解释器显示除单下划线以外的任何错误

standalone(独立)仅检索最后一个控制台输出

不是“控制台输出”,而是实际结果值,即对象本身:

>>> object()
<object object at 0x1002b10a0>
>>> _
<object object at 0x1002b10a0>
>>对象()
>>> _
还有其他的用法吗

按照惯例,
\uu
用作忽略其值的名称(不过您可能更喜欢名称
dummy
)。但这只是一个惯例

。。。和__;和_;一起

否。
\uuuuu
\uuuuu
没有其他用途

为什么没有四重下划线或更多

根本就没有。你声称这是一个无用的功能,那么你为什么还要更多呢


(我试着回答了你帖子中所有明确的问题,尽管我不得不承认我不确定你的意思……

有人把它编码到了翻译中,我问为什么,因为我不知道。对我来说它是无用的,其他人认为如果它存在的话这是个好主意。它没有被编码到语言的“核心”中。它被编码到langauge的交互式外壳中,包括
ipython
。有些人,包括我自己,觉得
\uu
很有用。其他人,不包括我自己,也发现
\uuuuuuuu
\uuuuuuuuu
很有用。我认为这是包含这个简单特性的充分理由。好吧,除了检索变量,还有一些关于下划线使用的约定,也许你想看看。这里解释了这些约定。