廢話不多說,上節說的是數據類型,本篇講講數據運算。 在算式“1+2”中,“1”和“2”被稱為操作數,“+”被稱為運算符 Python語言支持以下運算符 算術運算符 比較(關係)運算符 賦值運算符 邏輯運算符 位運算符 成員運算符 身份運算符 0x00. 算術運算符 以下假設變數a為10,變數b為20 ...
廢話不多說,上節說的是數據類型,本篇講講數據運算。
在算式“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。所有比較運算符返回1表示真,返回0表示假。這分別與特殊的變數True和False等價。註意,這些變數名的大寫。(a < b) 返回 True。>=大於等於 - 返回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 輸出結果 240 ,二進位解釋: 1111 0000>>右移動運算符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
運算符優先順序
以下表格列出了從最高到最低優先順序的所有運算符:
運算符描述**指數 (最高優先順序)~ + -按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@)* / % //乘,除,取模和取整除+ -加法減法>> <<右移,左移運算符&位 'AND'^ |位運算符<= < > >=比較運算符<> == !=等於運算符= %= /= //= -= += *= **=賦值運算符is is not身份運算符in not in成員運算符not or and邏輯運算符
歡迎關註我的公眾號:Python學習交流
換人加入我的千人交流答疑群:125240963