我不是在寻找这段代码的答案,但我想知道如何在-(-(-(-2))) ...
部分中进行计算。
我试着在谷歌"Python negative braces.."
等网站上查找,但一无所获。
-(-(-(-2))) == -2 and 4 >= 16 ** 0.5
这与普通数学表示法的工作方式完全相同。-(anything)
是对括号中的任何内容的否定。对2的否定是-2,对-2的否定是2。
-(-2(是-2的否定,-2是2。
-(-(-2((是对(-2(的否定-(-2(是2,对它的否定是-2。
-(-(-(-2(((是对-(-(的否定-(-(-2((是-2,对它的否定是2。
这意味着本质上是negative negative negative negative 2
。因为负的一个负,一个正,这等于正2。
所以最后:-(-(-(-2))) == -2
就是False
,所以如果你把它作为and
的一部分,不管怎样,你都会得到False
:
>>> -(-(-(-2))) == -2 and True
False