簡體   English   中英

python XOR為兩個整數

[英]python XOR for two integers

從Java背景進入Python並通過CodingBat( Python > Warmup -1 > pos_neg )運行時,以下內容使我非常困惑:

    >>> True ^ False 
    True 
    >>> 1<0 ^ -1<0 
    False 

我感謝以下內容:

    >>> (1<0) ^ (-1<0)
    True

但是,python將1<0 ^ -1<0為返回false是什么?

^ 優先級高於<

因此,要評估的實際上是1 < -1 < 0 ,其中0 ^ -1 = -1

因此,您正確地得到False ,因為不平等顯然不成立。

您幾乎不必記住優先級表。 只需整齊地使用括號即可。

你可能想看看出為好,其中討論了相同的情況。

0 ^ -1等於-1 1 < -1 < 0False因為1大於-1。 Python自然地鏈接關系運算符,因此1 < -1 < 0等效於(1 < -1) and (-1 < 0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM