Python零基礎入門之——運算符!

廢話不多說,上節說的是數據類型,本篇講講數據運算。

在算式“1+2”中,“1”和“2”被稱為操作數,“+”被稱為運算符

Python語言支持以下運算符

  • 算術運算符
  • 比較(關係)運算符
  • 賦值運算符
  • 邏輯運算符
  • 位運算符
  • 成員運算符
  • 身份運算符

0x00. 算術運算符

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

運算符描述實例+加 - 兩個對象相加a + b 輸出結果 30-減 - 得到負數或是一個數減去另一個數a - b 輸出結果 -10*乘 - 兩個數相乘或是返回一個被重複若干次的字符串a * b 輸出結果 200/除 - x除以yb / a 輸出結果 2%取模 - 返回除法的餘數b % a 輸出結果 0**冪 - 返回x的y次冪a**b 為10的20次方, 輸出結果 100000000000000000000//取整除 - 返回商的整數部分9//2 輸出結果 4 , 9.0//2.0 輸出結果 4.0

0x01. 比較運算符

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

運算符描述實例==等於 - 比較對象是否相等(a == b) 返回 False。!=不等於 - 比較兩個對象是否不相等(a != b) 返回 True.<>不等於 - 比較兩個對象是否不相等(a <> b) 返回 True。這個運算符類似 != 。>大於 - 返回x是否大於y(a > b) 返回 False。=大於等於 - 返回x是否大於等於y。(a >= b) 返回 False。<=小於等於 - 返回x是否小於等於y。(a <= b) 返回 True。

0x02. 賦值運算符

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

運算符描述實例=簡單的賦值運算符c = a + b 將 a + b 的運算結果賦值為 c+=加法賦值運算符c += a 等效於 c = c + a-=減法賦值運算符c -= a 等效於 c = c - a*=乘法賦值運算符c *= a 等效於 c = c * a/=除法賦值運算符c /= a 等效於 c = c / a%=取模賦值運算符c %= a 等效於 c = c % a**=冪賦值運算符c **= a 等效於 c = c ** a//=取整除賦值運算符c //= a 等效於 c = c // a

0x03. 邏輯運算符

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

運算符邏輯表達式描述實例andx and y布爾"與" - 如果 x 為 False,x and y 返回 False,否則它返回 y 的計算值。(a and b) 返回 20。orx or y布爾"或" - 如果 x 是非 0,它返回 x 的值,否則它返回 y 的計算值。(a or b) 返回 10。notnot x布爾"非" - 如果 x 為 True,返回 False 。如果 x 為 False,它返回 True。not(a and b) 返回 False

0x04. 位運算符

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

按位運算符是把數字看作二進制來進行計算的。Python中的按位運算法則如下:

運算符描述實例&按位與運算符(a & b) 輸出結果 12 ,二進制解釋: 0000 1100|按位或運算符(a | b) 輸出結果 61 ,二進制解釋: 0011 1101^按位異或運算符(a ^ b) 輸出結果 49 ,二進制解釋: 0011 0001~按位取反運算符(~a ) 輸出結果 -61 ,二進制解釋: 1100 0011, 在一個有符號二進制數的補碼形式。<>右移動運算符a >> 2 輸出結果 15 ,二進制解釋: 0000 1111

0x05. 成員運算符

運算符描述實例in如果在指定的序列中找到值返回True,否則返回False。x 在 y序列中 , 如果x在y序列中返回True。not in如果在指定的序列中沒有找到值返回True,否則返回False。x 不在 y序列中 , 如果x不在y序列中返回True

0x06. 身份運算符

身份運算符用於比較兩個對象的存儲單元

運算符描述實例isis是判斷兩個標識符是不是引用自一個對象x is y, 如果 id(x) 等於 id(y) , is 返回結果 1is notis not是判斷兩個標識符是不是引用自不同對象x is not y, 如果 id(x) 不等於 id(y). is not 返回結果 1

運算符優先級

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

運算符描述**指數 (最高優先級)~ + -按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@)* / % //乘,除,取模和取整除+ -加法減法>> < >=比較運算符<> == !=等於運算符= %= /= //= -= += *= **=賦值運算符is is not身份運算符in not in成員運算符not or and邏輯運算符


分享到:


相關文章: