??? 哈嘍大家好,本次是python數(shù)據(jù)分析、挖掘與可視化專(zhuān)欄第三期
?本期內(nèi)容:運(yùn)算符與表達(dá)式
??系列專(zhuān)欄:Python數(shù)據(jù)分析、挖掘與可視化
??保持開(kāi)心,拒絕拖延,你想要的都會(huì)有,加油加油!
前言
本期內(nèi)容為python的運(yùn)算符與表達(dá)式~
參考書(shū)籍:《Python數(shù)據(jù)分析、挖掘與可視化》
在python中,單個(gè)常量或變量可以看作最簡(jiǎn)單的表達(dá)式,使用賦值運(yùn)算符之外的其他任意運(yùn)算符連接的式子也是表達(dá)式,在表達(dá)式中還可以包含函數(shù)調(diào)用。
常用的python運(yùn)算符如下:
運(yùn)算符 | 功能說(shuō)明 |
---|---|
+ | 算數(shù)加法,列表、元組、字符串合并與連接,正號(hào) |
- | 算術(shù)減法,集合的差集,相反數(shù) |
* | 算數(shù)乘法,序列元素的重復(fù) |
/ | 真除法 |
// | 求整商,向下取整 |
% | 求余數(shù),字符串格式化 |
** | 冪運(yùn)算,指數(shù)可以為小數(shù) |
<、<=、>、>=、==、!= | 值大小比較,集合的包含關(guān)系比較 |
and、or、not | 邏輯與、邏輯或、邏輯非 |
in | 成員測(cè)試 |
is | 測(cè)試兩個(gè)對(duì)象是否為同一個(gè)對(duì)象的引用 |
^、&、<<、>>、~ | 位異或、位與、左移位、右移位、位求反 |
&、^ | 集合交集、對(duì)稱差集 |
算術(shù)運(yùn)算符
+運(yùn)算符
+運(yùn)算符除了用于算數(shù)加法,還可以用于列表、元組、字符串的連接。
print(6+6)
print(3.5+5.6)
print((3+4j)+(5+6j))
print('abc'+'def')
print([1,2]+[3,4])
print((1,2)+(3,))
-運(yùn)算符
-運(yùn)算符除了用于整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)之間的算術(shù)減法和相反數(shù)之外,還可以計(jì)算集合的差集。
注意:進(jìn)行浮點(diǎn)數(shù)之間的運(yùn)算時(shí),浮點(diǎn)數(shù)精度問(wèn)題有可能會(huì)導(dǎo)致誤差。
print(6.5 - 5.6)
print(6-2)
num=6
print(-num)
print(--num)
print(-(-num))
print({1,2,3} - {3,4,5})
print({3,4,5} - {1,2,3})
*運(yùn)算符
*運(yùn)算符除了表示整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)之間的算術(shù)乘法,還可以用于列表、元組、字符串這幾個(gè)類(lèi)型的對(duì)象與整數(shù)的乘法,表示序列的重復(fù)、生成新的列表、元組或字符串。
print(555*666)
print((3+4j) * (5+6j))
print('hello world'*3)
print([0]*5)
print((0,)*3)
/和//運(yùn)算符
/和//運(yùn)算符分別表示真除法和求整商,使用時(shí)要特別注意整除運(yùn)算符(//)向下取整的特點(diǎn)。
print(17/4)
print(17//4)
%運(yùn)算符
%運(yùn)算符可以用于求余數(shù)運(yùn)算,還可以用于字符串格式化。在計(jì)算余數(shù)時(shí),表達(dá)式結(jié)果與%右側(cè)的運(yùn)算數(shù)符號(hào)一致。
print(365 % 2)
# 格式化為字符
print('%c,%c'%(65,97))
**運(yùn)算符
**運(yùn)算符表示冪運(yùn)算,使用時(shí)要注意該運(yùn)算符具有右結(jié)合性,也就是說(shuō),如果有兩個(gè)連續(xù)的 * *運(yùn)算符,那么先計(jì)算右邊的再計(jì)算左邊的,除非使用圓括號(hào)明確修改表達(dá)式的計(jì)算順序。
# 2的4次方
print(2**4)
print(3**3**3)
print(3**(3**3))
# 使用圓括號(hào)修改計(jì)算順序
print((3**3)**3)
# 計(jì)算4的平方根
print(4**0.5)
# 對(duì)負(fù)數(shù)計(jì)算平方根得到復(fù)數(shù)
print((-1)**0.5)
關(guān)系運(yùn)算符
python的關(guān)系運(yùn)算符用于比較兩個(gè)對(duì)象的值之間的大小,要求操作數(shù)之間可以比較大小。
當(dāng)關(guān)系運(yùn)算符作用于集合時(shí),可以用于測(cè)試集合之間的包含關(guān)系。
當(dāng)作用于列表、元組或字符串時(shí),逐個(gè)比較對(duì)應(yīng)位置上的元素,直到得出確定的結(jié)論為止。
關(guān)系運(yùn)算符可以連續(xù)使用,當(dāng)連續(xù)使用時(shí)具有惰性求值的特點(diǎn),即當(dāng)已經(jīng)確定最終結(jié)果之后,不再進(jìn)行后面的比較。
# 關(guān)系運(yùn)算符優(yōu)先級(jí)低于算術(shù)運(yùn)算符
print(3+2 <7+8)
# 等價(jià)于3 < 5 and 5 > 2
print(3 < 5 > 2)
# 等價(jià)于 3==3 and 3<5
print( 3==3<5)
成員測(cè)試運(yùn)算符
成員測(cè)試運(yùn)算符in用于測(cè)試一個(gè)對(duì)象是否包含另一個(gè)對(duì)象,適用于列表、元組、字典、集合、字符串,以及range對(duì)象、zip對(duì)象、filter對(duì)象等包含多個(gè)元素的容器類(lèi)對(duì)象。
print(60 in [70,60,50,40])
print('abc' in 'asdgdfgdsfgasbdffc')
print('3' in map(str,range(5)))
print(5 in range(5))
集合運(yùn)算符
集合的交集、并集、對(duì)稱差集運(yùn)算分別使用==&、|、^==運(yùn)算符來(lái)實(shí)現(xiàn),而差集則使用減號(hào)運(yùn)算符實(shí)現(xiàn)。
a={35,45,55,65,75}
b={65,75,85,95}
print(a | b)
print(a & b)
print(a-b)
print(b-a)
print(a ^ b)
邏輯運(yùn)算符
邏輯運(yùn)算符and、or、not常用來(lái)連接多個(gè)子表達(dá)式構(gòu)成更加復(fù)雜的條件表達(dá)式,其優(yōu)先級(jí)低于算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、成員測(cè)試運(yùn)算符和集合運(yùn)算符。
and連接的兩個(gè)式子都等價(jià)于true時(shí),整個(gè)表達(dá)式的值才等價(jià)于true。or連接的兩個(gè)式子至少有一個(gè)等價(jià)于true時(shí),整個(gè)表達(dá)式的值才等價(jià)于true。對(duì)于and和or連接的表達(dá)式,最后計(jì)算的子表達(dá)式的值作為最終的計(jì)算結(jié)果。
在計(jì)算子表達(dá)式的值時(shí),計(jì)算結(jié)果只要不是0、0.0、0j、None、False、空列表、空元組、空字符串、空字典、空集合、空range對(duì)象或其他空的容器對(duì)象,都被認(rèn)為等價(jià)于true。
注意:and和or具有惰性求值或邏輯短路的特點(diǎn),當(dāng)連接多個(gè)表達(dá)式時(shí)只計(jì)算必須計(jì)算的值,并且最后計(jì)算的表達(dá)式的值作為整個(gè)表達(dá)式的值。
print(3 in range(5) and 'abc' in 'abcdefg')
print(3-3 or 5-2)
print(not 5)
print(not [])
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-436246.html
總結(jié)
以上就是今天的學(xué)習(xí)內(nèi)容啦~
如果有興趣的話可以訂閱專(zhuān)欄,持續(xù)更新呢~
咱們下期再見(jiàn)~文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-436246.html
到了這里,關(guān)于【python數(shù)據(jù)分析】運(yùn)算符與表達(dá)式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!