站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

python常用運(yùn)算符有哪些?

和其他大多數(shù)的語言一樣,python 中常用的操作符也有算術(shù)操作符、比較操作符、邏輯操作符,但是又有一些差別,下面詳細(xì)介紹。

python常用運(yùn)算符有哪些?

1. 算術(shù)運(yùn)算符

和其他大多數(shù)的語言一樣,python 也有 +(加)、-(減)、*(乘)、/(除)、%(取余)這 5 個運(yùn)算符,除此之外還有兩個特殊的運(yùn)算符,分別是 //(整除)和 **(冪運(yùn)算符,或叫乘方運(yùn)算符)。

這里,+、-、* 的功能和計(jì)算器相同,不再贅述了。

% 運(yùn)算符對浮點(diǎn)數(shù)也有效,例如:

>>> 3.75 % 0.5 0.25 >>> 3.75 % 2 1.75 >>>

** 運(yùn)算符是進(jìn)行冪(乘方)運(yùn)算的,例如:

>>> 3**2 9 >>> 2**3 8 >>>

需要注意的是 ** 運(yùn)算符和正負(fù)號(+、-)之間的優(yōu)先級關(guān)系,** 比其左側(cè)的正負(fù)號優(yōu)先級高,比其右側(cè)的正負(fù)號優(yōu)先級低。或者直接就可以認(rèn)為 ** 運(yùn)算符比正負(fù)號優(yōu)先級高,因?yàn)檎?fù)號在其右側(cè)時,兩個符號在一起,總不能把正負(fù)號去掉吧。例如:

>>> -3**2 -9 >>> 3**-2 0.1111111111111111 >>>

需要強(qiáng)調(diào)和區(qū)別的是 / 和 // 這兩個除運(yùn)算符。python 2.7 中,/ 對于兩個整數(shù)相除來說是整除,計(jì)算結(jié)果只留下整數(shù)部分,而小數(shù)部分沒有了,例如:

>>> 3/2 1 >>>

如果想要執(zhí)行普通的除法,即實(shí)現(xiàn)保留計(jì)算結(jié)果的小數(shù)部分,可以用浮點(diǎn)數(shù)進(jìn)行運(yùn)算,例如:

>>> 3.0/2 1.5 >>> 3/2.0 1.5 >>> 3/2. 1.5 >>> 3.0/2.0 1.5 >>>

而在 python 3 中,/ 有所改變,不管是整數(shù)除法還是浮點(diǎn)數(shù)除法,執(zhí)行的都是浮點(diǎn)數(shù)除法,即可以保留計(jì)算結(jié)果的小數(shù)部分。

同時,在 python 2 中實(shí)現(xiàn)保留計(jì)算結(jié)果的小數(shù)部分的另一個方法是,在程序前加上一句 from __feture__ import division 并執(zhí)行該語句(語句中的 __ 為兩個下劃線),例如:

>>> from __future__ import division >>> 3/2 1.5 >>> 5/4 1.25 >>>

此時的除法運(yùn)算和 python 3 中除法運(yùn)算已經(jīng)是一致的了。

在 python 中還提供了 // 這個整除運(yùn)算符,它做的是整除,而且對浮點(diǎn)數(shù)執(zhí)行的也是整除,例如:

>>> 3//2 1 >>> 3.0//2.0 1.0 >>> 5//2.0 2.0 >>>

2. 比較運(yùn)算符

和其他大多數(shù)的語言一樣,python 的比較運(yùn)算符包括 <、<=、>、>=、==、!=。比較運(yùn)算符根據(jù)表達(dá)式的值的真假返回布爾值 True 或 False。例如:

>>> 3 < 4 True >>> 3 > 4 False >>> 3 == 4 False >>> 3 != 4 True >>>

3. 邏輯運(yùn)算符

邏輯運(yùn)算符就是我們常說的與、或、非,在 python 里分別表示為 and、or、not。

使用邏輯運(yùn)算符可以將任意的表達(dá)式連接在一起,并得到一個布爾值。例如:

>>> 3 < 4 and 3 > 4 False >>> 3 < 4 or 3 == 4 True >>> not 3 < 4 False >>>

在使用邏輯運(yùn)算符時,最需要注意的一點(diǎn)是短路邏輯(或叫做惰性求值),它表達(dá)的意思是:邏輯運(yùn)算是自左向右進(jìn)行的,如果左邊已經(jīng)決定結(jié)果,就不會再去做右邊的計(jì)算。具體的表示如下:

  • 對于 x and y,如果 x 為假,則立刻返回 x 的值,而不用去執(zhí)行 y;如果 x 為真,則返回 y 的值

  • 對于 x or y,如果 x 為真,則立刻返回 x 的值,而不用去執(zhí)行 y;如果 x 為假,則返回 y 的值

例如:

>>> a Traceback (most recent call last):   File "<pyshell#21>", line 1, in <module>     a NameError: name 'a' is not defined  >>> 0 and a 0  >>> 0 or a Traceback (most recent call last):   File "<pyshell#23>", line 1, in <module>     0 or a NameError: name 'a' is not defined  >>> 6 and a Traceback (most recent call last):   File "<pyshell#24>", line 1, in <module>     6 and a NameError: name 'a' is not defined  >>> 6 or a 6 >>>

由于我們提前沒有定義變量 a,所以執(zhí)行 a 時是會報(bào)錯的。

  • 對于 0 and a,由于先判斷 0 為假(程序語言中一般 0 都表示假,非 0 代表真),此時已經(jīng)能夠決定整個結(jié)果是假,所以會直接返回 0 而不去執(zhí)行 a,因而不會報(bào)錯。

  • 對于 0 or a,先判斷 0 為假,此時并不能決定整個結(jié)果是真是假,所以會繼續(xù)去執(zhí)行 a,因而就會報(bào)錯。

  • 對于 6 and a,先判斷 6 為真,此時并不能決定整個結(jié)果是真是假,所以會繼續(xù)去執(zhí)行 a,因而就會報(bào)錯。

  • 對于 6 or 啊,由于先判斷 6 為真,此時已經(jīng)能夠決定整個結(jié)果是真,所以會直接返回 6 而不去執(zhí)行 a,因而不會報(bào)錯。

總結(jié):運(yùn)算符的優(yōu)先級

下面我們再來總結(jié)運(yùn)算符的優(yōu)先級高低,見下圖:

python常用運(yùn)算符有哪些?

推薦學(xué)習(xí):Python視頻教程

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
亚洲精品国产日韩无码AV永久免费网| 91精品视频网站| 久久久久无码精品国产h动漫| 国产99精品一区二区三区免费| 久久精品国产免费观看三人同眠| 国产日韩久久久精品影院首页 | 91精品国产亚洲爽啪在线影院| 日韩三级一区二区三区| 国产精品天天在线午夜更新| 伊人久99久女女视频精品免| 国产成人精品免费视频大| 久久99国产乱子伦精品免费| 无码精品日韩中文字幕| 中文字幕久精品免费视频| 国产三级国产精品国产普男人 | 精品一区二区三区在线观看l| 亚洲精品不卡视频| 亚洲一二成人精品区| 亚洲动漫精品无码av天堂| 亚洲精品高清国产一线久久| 伊人久久国产精品| 久久国产精品无码网站| 亚洲午夜成人精品电影在线观看| 国产精品三级av及在线观看| 日本久久中文字幕精品| 国产精品乱码一区二区三| 日韩精品一线二线三线优势| www.999精品视频观看免费| 99香蕉国产精品偷在线观看| 精品久久久久久婷婷| 99在线精品免费视频九九视| 97精品久久天干天天天按摩| 国产精品永久免费10000| 一级一级特黄女人精品毛片视频| 日韩精品无码一区二区三区免费| 国产一区二区精品久久凹凸| 国产在线精品一区二区不卡麻豆| 日韩精品中文字幕视频一区| 日韩经典午夜福利发布| 美女bbbb精品视频| jizzjizz国产精品久久|