python運算符及優先級


計算機可以進行的運算有很多種,可不只加減乘除這么簡單,運算按種類可分為算數運算、比較運算、邏輯運算、賦值運算、成員運算、身份運算、位運算。

一、算數運算

以下假設變量:a=10,b=20

 

二、比較運算

以下假設變量:a=10,b=20,注:<>不等於在python2中使用,python3中不等於為 !=

 

三、邏輯運算

以下假設變量:a=10,b=20

 

四、賦值運算

以下假設變量:a=10,b=20

 

五、成員運算

示例:

>>> a = "hello"
>>> "he" in a
True
>>> "hl" in a
False
>>> a = [1,5,10,100]
>>> 10 in a
True
>>> 11 in a
False

六、身份運算

== 判斷兩個變量值是不是相等,is 判斷兩個變量是不是引用同一個對象,對象id是不是相同。

之前博客有說,python有內存優化機制,長字符串和[-5,257)范圍外的數字沒有優化,以此為例,例如:

>>> a = 257
>>> b = 257
>>> id(a)
2588953715824
>>> id(b)
2588983651248
>>> a == b
True
>>> a is b
False
>>> c = 256
>>> d = 256
>>> id(c)
1955897424
>>> id(d)
1955897424
>>> c == d
True
>>> c is d
True

七、位運算

之前博客有說二進制和二進制與十進制的轉換,位運算符是把數字看作二進制來進行計算的。

以下假設變量:a=60,b=13

 # 以下為示例代碼,二進制有補0和空格

  >>> a = 60
  >>> b = 13

>>> bin(a)
'0b0011 1100'  
>>> bin(b)
'0b0000 1101'
>>> a&b
12
>>> bin(12)
'0b0000 1100'
>>> a|b
61
>>> bin(61)
'0b0011 1101'
>>> a^b
49
>>> bin(49)
'0b0011 0001'
>>> ~a
-61
>>> bin(-16)
'-0b0001 0000'
>>> a<<2
240
>>> bin(240)
'0b1111 0000'
>>> a>>2
15
>>> bin(15)
'0b0000 1111'

Python運算符優先級

以下表格列出了從最高到最低優先級的所有運算符:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM