Python運算符大全


  一、 Python的算術運算

  Python的算術運算符與C語言類似,略有不同。包括加(+)、減(-)、乘(*)、除(/)、取余(%)、按位或(|)、按位與(&)、按位求補(~)、左移位(<<)、右移位(>>)、單目求反(-)、冪運算(**)、整除運算(//)、增強運算、增強矩陣乘法(@)。

  增強運算是將算術運算符或邏輯運算符放到等號的左側,與C語言的增強運算符相同。如x+=5,表示x=x+5,該種方法CPU的處理效率高於普通運算方式,且執行優先級也高些。

  下面看看這些運算的例子,大家可以理解一下:

  >>> 10%3

  1

  >>> 10//3

  3

  >>> 10**3

  1000

  >>> n=False

  >>> n

  False

  >>> type(n)

  >>> i=0

  >>> i==n

  True

  >>> 4>>2

  1

  >>> 4<<2

  16

  >>> ~4

  -5

  >>> 2&4

  0

  >>> 2|4

  6

  >>> m=2

  >>> m**=3

  >>> m

  8

  矩陣乘法目前本人還沒弄明白,如果以后弄明白了再補充。

  二、 Python的布爾類型

  在介紹比較急邏輯運算之前,需要介紹一個前面沒有介紹的bool(布爾)數據類型。

  布爾數據類型是用於條件判斷、比較運算和邏輯運算,只有兩個值真(True)和假(False)。布爾類型其實是int的子類,False和True對應的值是0和1。但真正使用時,下面的值都將被視為假:

  False None 0 “” () [] {}

  也就是說標准值False和None、各種類型(包括浮點數、復數等)的數值0、空序列(如空字符串、空元組和空列表)以及空映射(如空字典)都被視為假,而其他各種值都被視為真。

  看看下面的運算結果:

  >>> True == 1

  True

  >>> False == 0

  True

  >>> True + True

  2

  三、 比較運算

  比較運算表達式 解釋

  x==y x是否等於y

  x>y x是否大於y

  x 無錫人流醫院哪家好 http://www.csjlwtrl.com/

  x>=y x是否大於等於y

  x<=y x是否小於等於y

  x!=y x是否不等於y

  x is y x是否和y是同一對象

  x is not y x是否和y不是同一對象

  x in y x是否是y的元素

  x not in y x是否不是y的元素

  以上運算中的后2個主要用於復雜數據類型的成員判斷,后面講這些數據類型會用到。

  四、 邏輯運算

  邏輯運算與C語言的類似,有邏輯或(or)、邏輯與(and)、邏輯非(not),但沒有C語言的簡單運算符號||、&&、!。

  看看運算實例:

  >>> not 2

  False

  >>> not 0

  True

  >>> 2 and 4

  4

  >>> 2 or 4

  2

  >>> s='123'

  >>> s or 2 or 3

  '123'

  >>> 2 and 3 and s

  '123'

  從上面后幾個示例看出,邏輯運算符and和or不一定都是返回True或False,or當其中參與運算的數據有個值不為False(包括False、0、空等,下同)則直接返回該數據,and當所有數據都不為False則返回最后一個數據。

  五、 運算符的優先級

  下面列出了所有運算符的優先級,數值越大,表示優先級越高。

  上述運算符中有個lambda,這是個lambda就是用來定義一個匿名函數的。老猿認為用處不大,具體內容大家可以在網上查一下。

  更正:

  在上一章節,關於Python語句部分的前面部分內容強調“必須縮進4個空格”縮進與該章節“Python的代碼嵌套格式”描述不一樣,實際上相關要求是遵循“Python的代碼嵌套格式”的情況下,推薦使用一次縮進4個空格。

  另外關於語句中冒號的使用,只說明了那些語句后面必須有冒號,但其實冒號指出來接下來是一段(也可以只有一行)統一縮進的代碼塊。


免責聲明!

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



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