請問python中為什麼True等於 2?另外除了還有沒有其他取反操作符

時間 2021-05-05 08:24:05

1樓:

去反是按位去反?那只有這個符號「~」

true是乙個bit,bool型,按位去反會擴充套件成int型,true的預設值是1即0x0000_0001( 假設int為32位)

所以~true為0xffff_fffe, 也就是-2 ( 補碼-2)如果不是按位去反的操作可以直接用not, not true

2樓:匿名使用者

不會啊。false是0,true是非0。所有非0,包括-2都是true

在你這個試例裡true為1,所以~1就等於-2~1取反後是-2

~0等於-1,

3樓:手速抽風

因為,true的預設值為1

把true取反,也就是把1取反

因為python預設的是有符號表示數

1的二進位制表示就是00000001

各位取反之後就是11111110

可見,取反之後,符號位從0變成了1,成了乙個負數而已1作為符號位開頭,計算機會將其識別為補碼因為負數在機器中是以補碼表示、補碼轉換真值的方式為補碼的數值位,也就是除符號位之外的各位取反後加1。11111110除符號位取反後的值為10000001,再加1,便得到10000010,轉換成十進位制,便是-2

4樓:匿名使用者

~(-2)是1

~(-2)是1

~(-2)是1

~(-2)是1

~(-2)是1

python中為什麼print None or 1 and 2 print 1 or None and 2 結果不一樣

and 和 or的優先順序是一樣的,但是 or有短路現象true or 這種情況也不管 是什麼,不會計算,就是true 所以 none or 1 and 2 none or 1 是 1,1 and 2 是 2 1 or none and 2 符合 true or 的短路情況,所以是 1 windy一...

請問山貓對熱火為什麼強中更有強中手

啥都不說了,先讚乙個詹姆斯!三分球也平了職業生涯吧?命中率還百分之百!贊!實話實說,山貓與熱火相比還是有差距的。一看便知。傑弗森能拿個38分,2雙已是不易,其實他完全可以進全明星 估計山貓隊戰績太差 這一場他打的也是可圈可點,但是在詹姆斯的光輝下,他就顯的黯淡了些。看的出來一開始詹姆斯打的比較放鬆,...

請問法語中為什麼要賓語前置?什麼時候要啊

利翼金寰 en是副代詞,代表de 補語。vous是直接賓語前置。vous和en的位置關係由代詞順序表決定。你看看這個就知道了。左邊的列在右邊的前面,每列中,位於上面的代詞位置更靠前。即從左到右,從上至下排列。mele luiy tela leur ennous lesvous compris? 紫涵...