python的運(yùn)算符與表達(dá)式你真的了解嗎
一、表達(dá)式
- 是由一個(gè)或多個(gè)操作數(shù)通過操作符組合而成
- 最簡單的表達(dá)式僅包含一個(gè)字面值常量或變量
二、運(yùn)算符
1、算術(shù)運(yùn)算符
運(yùn)算符 | 描述(變量a為10,變量b為21) | 實(shí)例 |
+ | 加:兩個(gè)對象相加 | a+b 輸出:31 |
- | 減:得到負(fù)數(shù)或是一個(gè)數(shù)減去另一個(gè)數(shù) | a-b 輸出:-11 |
* | 乘:兩個(gè)數(shù)相乘或返回一個(gè)被重復(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í)例 |
== | 等于:比較兩個(gè)對象是否相等 | (a==b) 返回False |
!= | 不等于:比較兩個(gè)對象是否不相等 | (a!=b) 返回True |
> | 大于:比較a是否大于b | (a>b) 返回False |
< | 小于:比較a是否小于b | (a<b) 返回True |
>= | 大于等于:比較a是否大于等于b | (a>=b) 返回False |
<= | 小于等于:比較a是否小于等于b | (a<=b) 返回True |
- 可以多個(gè)運(yùn)算符連用
- 如:10 > x > 5
- 等價(jià)于: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 | 是判斷兩個(gè)標(biāo)識符是不是引用自一個(gè)對象 | x is y,類似id(x) == id(y),如果引用的是同一個(gè)對象則返回True,否則返回False |
is not | 是判斷兩個(gè)標(biāo)識符是不是引用自不同對象 | x is not y,類似id(x) != id(y),如果引用的不是同一個(gè)對象則返回True,否則返回False |
7、位運(yùn)算
運(yùn)算符 | 描述(換算成二進(jìn)制計(jì)算) | 實(shí)例 |
& | 參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為1,則該位結(jié)果位2,否則為0 | a & b |
| | 只要對應(yīng)的二個(gè)二進(jìn)位有一個(gè)為1時(shí),結(jié)果位就為1 | a | b |
^ | 當(dāng)兩對應(yīng)的二進(jìn)位相異時(shí),結(jié)果為1 | a ^ b |
~ | 對數(shù)據(jù)的每個(gè)二進(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)先級表決定了哪個(gè)運(yùn)算符在別的運(yùn)算符之前計(jì)算
- 具有相同優(yōu)先級的運(yùn)算符按照從左往右的順序計(jì)算
- 改變它們的計(jì)算順序,得使用圓括號:(2+3)*4
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Python tkinter庫實(shí)現(xiàn)登錄注冊基本功能
Python自帶了tkinter模塊,實(shí)質(zhì)上是一種流行的面向?qū)ο蟮腉UI工具包 TK 的Python編程接口,提供了快速便利地創(chuàng)建GUI應(yīng)用程序的方法,下面這篇文章主要給大家介紹了關(guān)于tkinter庫制作一個(gè)簡單的登錄注冊小程序,需要的朋友可以參考下2022-12-12基于Python Shell獲取hostname和fqdn釋疑
一直以來被linux的hostname和fqdn(Fully Qualified Domain Name)困惑著,今天通過腳本之家平臺把它們使用細(xì)節(jié)弄清分享給大家2016-01-01pytorch網(wǎng)絡(luò)模型構(gòu)建場景的問題介紹
這篇文章主要介紹了pytorch網(wǎng)絡(luò)模型構(gòu)建場景的注意點(diǎn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-03-03使用keras實(shí)現(xiàn)Precise, Recall, F1-socre方式
這篇文章主要介紹了使用keras實(shí)現(xiàn)Precise, Recall, F1-socre方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06Python代碼集pathlib應(yīng)用之獲取指定目錄下的所有文件
這篇文章主要介紹了Python代碼集pathlib應(yīng)用之獲取指定目錄下的所有文件,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03