python的運(yùn)算符與表達(dá)式你真的了解嗎
一、表達(dá)式
- 是由一個或多個操作數(shù)通過操作符組合而成
- 最簡單的表達(dá)式僅包含一個字面值常量或變量
二、運(yùn)算符
1、算術(shù)運(yùn)算符
| 運(yùn)算符 | 描述(變量a為10,變量b為21) | 實(shí)例 |
| + | 加:兩個對象相加 | a+b 輸出:31 |
| - | 減:得到負(fù)數(shù)或是一個數(shù)減去另一個數(shù) | a-b 輸出:-11 |
| * | 乘:兩個數(shù)相乘或返回一個被重復(fù)若干次的字符串 | a*b 輸出:210 |
| / | 除:x除以y | b/a 輸出:2.1 |
| % | 取余:返回除法的余數(shù) | b%a 輸出:1 |
| ** | 冪:返回x的y次冪 | a**b 為10的21次方 |
| // | 取整除:向下取接近除數(shù)的整數(shù) | 9//2==4;-9//2==-5 |
2、賦值運(yùn)算符
| 運(yùn)算符 | 描述 | 實(shí)例 |
| = | 簡單的賦值運(yùn)算符 | c = a + b 將 a + b 的運(yùn)算結(jié)果賦值給c |
| += | 加法賦值運(yùn)算符 | c += a 等效于 c = c + a |
| -= | 減法賦值運(yùn)算符 | c -= a 等效于 c = c - a |
| *= | 乘法賦值運(yùn)算符 | c *= a 等效于 c = c * a |
| /= | 除法賦值運(yùn)算符 | c /= a 等效于 c = c / a |
| %= | 取模賦值運(yùn)算符 | c %=a 等效于 c = c % a |
| **= | 冪賦值運(yùn)算符 | c ** a 等效于 c = c ** a |
| //= | 取整除賦值運(yùn)算符 | c //= a 等效于 c = c // a |
3、比較運(yùn)算符
| 運(yùn)算符 | 描述(a為10,b為20) | 實(shí)例 |
| == | 等于:比較兩個對象是否相等 | (a==b) 返回False |
| != | 不等于:比較兩個對象是否不相等 | (a!=b) 返回True |
| > | 大于:比較a是否大于b | (a>b) 返回False |
| < | 小于:比較a是否小于b | (a<b) 返回True |
| >= | 大于等于:比較a是否大于等于b | (a>=b) 返回False |
| <= | 小于等于:比較a是否小于等于b | (a<=b) 返回True |
- 可以多個運(yùn)算符連用
- 如:10 > x > 5
- 等價于:x < 10 and x > 5
4、邏輯運(yùn)算符
| 運(yùn)算符 | 邏輯表達(dá)式 | 描述(x 為 10,y 為 20) | 實(shí)例 |
| and | x and y | 與:如果x為False,返回False,否則返回y的計(jì)算值 | (x and y) 返回 20 |
| or | x or y | 或:如果x為True,返回x的值,否則返回y的計(jì)算值 | (x or y) 返回 10 |
| not | not x | 非:如果x為True,返回False,如果x為False,返回True | not (a and b)返回False |
運(yùn)算:
若or左側(cè)表達(dá)式為True,則短路后面所有的表達(dá)式(不管是and還是or)
若and左側(cè)表達(dá)式為False,則短路后面所有的and表達(dá)式
5、成員關(guān)系運(yùn)算
| 運(yùn)算符 | 描述 | 實(shí)例 |
| in | 如果在指定的序列中找到值返回True,否則返回False | 如果x在y序列中返回True |
| not in | 如果在指定的序列中沒有找到值返回True,否則返回False | 如果x不在y序列中返回True |
6、對象實(shí)例測試
運(yùn)算符 | 描述 | 實(shí)例 |
| is | 是判斷兩個標(biāo)識符是不是引用自一個對象 | x is y,類似id(x) == id(y),如果引用的是同一個對象則返回True,否則返回False |
| is not | 是判斷兩個標(biāo)識符是不是引用自不同對象 | x is not y,類似id(x) != id(y),如果引用的不是同一個對象則返回True,否則返回False |
7、位運(yùn)算
| 運(yùn)算符 | 描述(換算成二進(jìn)制計(jì)算) | 實(shí)例 |
| & | 參與運(yùn)算的兩個值,如果兩個相應(yīng)位都為1,則該位結(jié)果位2,否則為0 | a & b |
| | | 只要對應(yīng)的二個二進(jìn)位有一個為1時,結(jié)果位就為1 | a | b |
| ^ | 當(dāng)兩對應(yīng)的二進(jìn)位相異時,結(jié)果為1 | a ^ b |
| ~ | 對數(shù)據(jù)的每個二進(jìn)制位取反,即把1變?yōu)?,把0變?yōu)?;-x類似于 -x-1 | a ~ b |
| << | 運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由“<<”右邊的數(shù)指定移動的位數(shù),高位丟棄,低位補(bǔ)0 | a << b |
| >> | 把“>>”左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位,“>>”右邊的數(shù)指定移動的位數(shù) | a >> b |
8、一元運(yùn)算 :
+x ; -x ;~x
三、python運(yùn)算符優(yōu)先級
1、運(yùn)算符優(yōu)先級
| 運(yùn)算符 | 描述 |
| ** | 指數(shù)(最高優(yōu)先級) |
| ~ + - | 按位翻轉(zhuǎn),一元加號和減號 |
| * / % // | 乘、除、取余和地板除 |
| + - | 加法減法 |
| >> << | 右移、左移運(yùn)算符 |
| & | 位‘AND’ |
| ^ | | 位運(yùn)算符 |
| <= < > >= | 比較運(yùn)算符 |
| < > == != | 等于運(yùn)算符 |
| = %= /= //= -= += *= **= | 賦值運(yùn)算符 |
| is is not | 身份運(yùn)算符 |
| in not in | 成員運(yùn)算符 |
| and or not | 邏輯運(yùn)算符 |
2、計(jì)算順序
- 運(yùn)算符優(yōu)先級表決定了哪個運(yùn)算符在別的運(yùn)算符之前計(jì)算
- 具有相同優(yōu)先級的運(yùn)算符按照從左往右的順序計(jì)算
- 改變它們的計(jì)算順序,得使用圓括號:(2+3)*4
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Python iter()函數(shù)用法實(shí)例分析
這篇文章主要介紹了Python iter()函數(shù)用法,結(jié)合實(shí)例形式詳細(xì)分析了Python iter()函數(shù)的功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-03-03
Django實(shí)現(xiàn)隨機(jī)圖形驗(yàn)證碼的示例
這篇文章主要介紹了Django實(shí)現(xiàn)隨機(jī)圖形驗(yàn)證碼的示例,幫助大家更好的學(xué)習(xí)和使用django框架,感興趣的朋友可以了解下2020-10-10
Python中if?__name__==‘__main__‘用法詳情
這篇文章主要介紹了Python中if?__name__==‘__main__‘用法詳情,文章首先通過我們先定義一個test01.py的文件展開詳情,具有一定的參考價值,感興趣的朋友可以參考一下2022-06-06
謹(jǐn)慎使用Python進(jìn)行矩陣計(jì)算解析
這篇文章主要介紹了使用Python進(jìn)行矩陣計(jì)算原理解析,真正的單位矩陣,只有對角線元素為1,其他元素為0,用 np.identity(N) 生成單位矩陣,需要的朋友可以參考下2023-08-08
pandas 對series和dataframe進(jìn)行排序的實(shí)例
今天小編就為大家分享一篇pandas 對series和dataframe進(jìn)行排序的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06
python 監(jiān)控logcat關(guān)鍵字功能
這篇文章主要介紹了python 監(jiān)控logcat關(guān)鍵字功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09

