python中的常用運(yùn)算符和優(yōu)先級
算術(shù)運(yùn)算符
運(yùn)算符 | 名稱 | 說明 | 例子 |
---|---|---|---|
+、-、*、/ | 加、減、乘、除 | 字符串之間相加即為連接,字符串與數(shù)字相乘即為重復(fù) ,兩個(gè)數(shù)相除結(jié)果總為浮點(diǎn)數(shù) | ‘a’+‘b’得到’ab’,‘la’*3得到’lalala’ |
** | 冪 | 指數(shù)運(yùn)算,返回x的y次冪 | 3**4得到81,相當(dāng)于 pow()函數(shù) |
// | 取商數(shù) | 返回商的整數(shù)部分(不大于x與y之商的最大整數(shù)) | 4//3.0得到1.0,4//3得到1 |
% | 取余數(shù)(取模) | 返回除法的余數(shù)(不同語言可能結(jié)果不一樣,個(gè)人理解在python中運(yùn)算結(jié)果是商往負(fù)無窮方面取臨近整數(shù)時(shí)的得到余數(shù)) | -16%3得到2,16%(-3)得到-2,-16%-3得到-1,-25.5%2.25得到1.5 |
注:
1.三種類型存在一種逐漸擴(kuò)展或變寬的關(guān)系:整數(shù) -> 浮點(diǎn)數(shù) -> 復(fù)數(shù)
2.類型間混合運(yùn)算,生成結(jié)果為“最寬”的類型。例如整數(shù) + 浮點(diǎn)數(shù) = 浮點(diǎn)數(shù)
3.在運(yùn)算過程中會要求兩個(gè)操作數(shù)類型一致,當(dāng)操作數(shù)類型不一致時(shí),系統(tǒng)會自動(dòng)將低類型向高類型轉(zhuǎn)換后計(jì)算。例如x=2.3;y=5;x+y返回7.3
print(-25.5%2.25) print(-25.5/2.25) print(divmod(-25.5,2.25)) #divmod同時(shí)取商和余數(shù) print(divmod(25.5,2.25))
輸出結(jié)果:
1.5
-11.333333333333334
(-12.0, 1.5)
(11.0, 0.75)
比較運(yùn)算符
運(yùn)算符 | 名稱 | 說明 | 例子 |
---|---|---|---|
<,>,<=,>= | – | 返回False或者True | 3<5<7返回True |
==,!= | 等于,不等于 | 返回False或者True | x=‘abc’;y='Abc’則x==y返回False |
邏輯運(yùn)算符
運(yùn)算符 | 名稱 | 說明 | 例子 |
---|---|---|---|
not | 布爾非 | 返回False或者True | not 5返回False,not 0返回True |
and | 布爾與 | 返回False或者True | 1 and 45返回45(兩個(gè)都是真值時(shí)取第二個(gè)值) |
or | 布爾或 | 返回False或者True | True or False返回True |
注:
1.“與”運(yùn)算 a and b 時(shí),如果a為假,a and b就返回假,否則返回b的值
2.“或”運(yùn)算 a or b時(shí),如果a非0,返回a的值,否則返回b的值
3.“非”運(yùn)算 not a 時(shí),如果a為真,就返回假,如果a為假,就返回真
(巧記: and 和 or 都是前一個(gè)值進(jìn)行決定性判斷,如果能對前一個(gè)值做出決定性判斷則返回前一個(gè)值,如果不能得出決定性判斷,就返回第二個(gè)值。and 前一個(gè)為假則必為假,or 前一個(gè)為真則必為真,可以把這個(gè)理解為決定性判斷。)
print(0 and 11) print(18 and 7) print(18 and 0) print(True and False) print(False and True)
輸出結(jié)果:
0
7
0
False
False
print(5 or 88) print(5 or False) print(0 or 9) print(False or 0) print(0 or False)
輸出結(jié)果:
5
5
9
0
False
賦值運(yùn)算符
=、+=、-=、*=、/=、%=、**=、//=
>>> a = 3 >>> b = 6 >>> c = 0 >>> c = a + b >>> c += 5 # 9+5 >>> c 14 >>> c -= a # 14-3 >>> c 11 >>> c *= a # 11*3 >>> c 33 >>> c /= a # 33/3 >>> c 11.0 >>> c %= a # 11.0/3 >>> c 2.0 >>> c **= a # 2.0的3次冪 >>> c 8.0 >>> c //=a # 8.0//3 >>> c 2.0 >>>
常用運(yùn)算符的優(yōu)先級
運(yùn)算符(從低到高,同一行優(yōu)先級相同) |
---|
lambda 表達(dá)式 |
or 布爾或 |
and 布爾與 |
not 布爾非 |
in、not in(成員測試) |
is、is not(同一性測試) |
<、<=、>、>=、!=、== |
+、- |
*、/、% |
** |
注:
如果想要改變它們的計(jì)算順序,可以使用圓括號()。
#比較部分優(yōu)先級 print((1 in [1,0]) == True) #True print(1 in [1, 0] == True) #False print((2 > 1) is True) #True print(2 > 1 is True) #False
輸出結(jié)果:
True
False
True
False
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python爬蟲爬取微博熱搜保存為 Markdown 文件的源碼
這篇文章主要介紹了Python爬蟲爬取微博熱搜保存為 Markdown 文件,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02sublime python3 輸入換行不結(jié)束的方法
下面小編就為大家分享一篇sublime python3 輸入換行不結(jié)束的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04在python tkinter中Canvas實(shí)現(xiàn)進(jìn)度條顯示的方法
今天小編就為大家分享一篇在python tkinter中Canvas實(shí)現(xiàn)進(jìn)度條顯示的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06使用python腳本實(shí)現(xiàn)Redis未授權(quán)訪問檢測
Redis未授權(quán)訪問漏洞是一種安全漏洞,可能導(dǎo)致未經(jīng)授權(quán)的用戶或攻擊者訪問Redis數(shù)據(jù)庫,甚至修改或刪除其中的數(shù)據(jù),這種漏洞通常發(fā)生在管理員未正確配置Redis實(shí)例的訪問控制和認(rèn)證機(jī)制時(shí),本文介紹了python腳本實(shí)現(xiàn)Redis未授權(quán)訪問漏洞利用,需要的朋友可以參考下2024-10-10Python中的特殊語法:filter、map、reduce、lambda介紹
這篇文章主要介紹了Python中的特殊語法:filter、map、reduce、lambda介紹,本文分別對這個(gè)特殊語法給出了代碼實(shí)例,需要的朋友可以參考下2015-04-04Python利用format函數(shù)實(shí)現(xiàn)對齊打印(左對齊、右對齊與居中對齊)
format是字符串內(nèi)嵌的一個(gè)方法,用于格式化字符串,下面這篇文章主要給大家介紹了關(guān)于Python利用format函數(shù)實(shí)現(xiàn)對齊打印(左對齊、右對齊與居中對齊)的相關(guān)資料,需要的朋友可以參考下2022-04-04