Python 用它的神奇行为屏蔽内置变量?

Python 用它的神奇行为屏蔽内置变量?,python,python-3.x,Python,Python 3.x,我无法理解这一点: 用户应将此变量视为只读变量。不要显式地给它赋值——你会创建一个同名的独立局部变量,用它的神奇行为屏蔽内置变量 在交互提示中,u具有神奇的行为-它被设置为上次计算的任何表达式的值: >>> 3 + 3 6 >>> _ 6 但是,如果您为名为uuo yourself的变量赋值,那么您只会看到该变量,并且魔法变量是隐藏的: >>> _ = 3 >>> 3 + 3 6 >>> _ 3 这是因

我无法理解这一点:

用户应将此变量视为只读变量。不要显式地给它赋值——你会创建一个同名的独立局部变量,用它的神奇行为屏蔽内置变量


在交互提示中,u具有神奇的行为-它被设置为上次计算的任何表达式的值:

>>> 3 + 3
6
>>> _
6
但是,如果您为名为uuo yourself的变量赋值,那么您只会看到该变量,并且魔法变量是隐藏的:

>>> _ = 3
>>> 3 + 3
6
>>> _
3
这是因为您的局部变量u与具有神奇行为的变量无关,它恰好具有相同的名称


所以不要这样做,无论如何不要在交互提示中这样做。

在交互提示中,uuu具有神奇的行为-它被设置为最后计算的任何表达式的值:

>>> 3 + 3
6
>>> _
6
但是,如果您为名为uuo yourself的变量赋值,那么您只会看到该变量,并且魔法变量是隐藏的:

>>> _ = 3
>>> 3 + 3
6
>>> _
3
这是因为您的局部变量u与具有神奇行为的变量无关,它恰好具有相同的名称


所以不要这样做,无论如何不要在交互提示中这样做。

它的意思和它所说的完全一样;您不应该为u变量赋值,因为那样会隐藏真正的魔法变量:

>>> 1 + 1
2
>>> _
2
>>> _ = 'foo'
>>> 2 + 2
4
>>> _
'foo'
magic变量存储最后一个被回送的表达式的结果,但是通过分配给magic变量,您就不能再“看到”这个magic变量了。查找uu显示我现在分配给它的任何值

幸运的是,您还可以再次删除阴影名称:

>>> del _
>>> 2 + 2
4
>>> _
4

它的意思正是它所说的意思;您不应该为u变量赋值,因为那样会隐藏真正的魔法变量:

>>> 1 + 1
2
>>> _
2
>>> _ = 'foo'
>>> 2 + 2
4
>>> _
'foo'
magic变量存储最后一个被回送的表达式的结果,但是通过分配给magic变量,您就不能再“看到”这个magic变量了。查找uu显示我现在分配给它的任何值

幸运的是,您还可以再次删除阴影名称:

>>> del _
>>> 2 + 2
4
>>> _
4

1.你的链接不起作用。2.这个解释看起来很直截了当,如果你不知道什么是“掩蔽”或“阴影”,你可以在这里读更多:你不遵循哪一部分?它们解释了交互式解释器中的uMagic变量的作用。你的链接不起作用。2.这个解释看起来很直截了当,如果你不知道什么是“掩蔽”或“阴影”,你可以在这里读更多:你不遵循哪一部分?他们解释了交互式解释器中的uuMagic变量的作用。我之所以要向上投票,仅仅是因为:它的意思和它所说的完全一样,它的意思是:好吧,不仅是“唯一的”,而且……我之所以要向上投票,仅仅是因为:它的意思和它所说的完全一样,它的意思是:好吧,不仅是“唯一的”,而且。。。