python标准算术操作符有哪些_在python中的算术操作符
Python 的算術(shù)操作符大多數(shù)和大家知道的數(shù)學(xué)運(yùn)算符一樣:
+ 、一、 * 、% 、**、//
前面四個就不用介紹了,加、減、乘、除,大家都懂。不過下面要介紹的小技巧倒不是所有人都知道的。
例如,當(dāng)想對一個變量本身進(jìn)行算術(shù)運(yùn)算的時候,是不是會覺得寫a=a+1或b=b-3這類操作符特別麻煩?沒錯,在Python 中可以做一些簡化:
>>> a=b=c=d=10
>>> a += 1
>>> b -= 3
>>> C *= 10
>>> d /= 8
>>> print(a, b,c, d)
11 7 100 1.25
如果使用過Python 2.x版本的讀者可能會發(fā)現(xiàn),Python3的除法變得有些不同了。
很多編程語言中,整數(shù)除法一般都是采用floor的方式,有些書籍將其直接翻譯為地板除法。地板除法的概念是:計算結(jié)果取比商小的最大整型值(也就是舍棄小數(shù),取整的意思)。
但是在這里我們發(fā)現(xiàn),即使是進(jìn)行整數(shù)間的除法,結(jié)果卻是返回一個浮點型的精確數(shù)值,也就是Python采用真正的除法代替了地板除法。
那有些朋友不樂意了:“蘿卜、青菜各有所愛,我就喜歡原來的除法,整數(shù)除以整數(shù)就應(yīng)該得到一個整數(shù)!”,于是 Python的團(tuán)隊也為此想好了辦法,就是大家看到的雙斜杠,它執(zhí)行的就是地板除法的操作:
>>> 3 // 2
1
>>> 3.0 // 2
1.0
注意:
使用地板除法,無論是整型還是浮點型,都將舍棄小數(shù)部分。
關(guān)于 Python3在除法運(yùn)算上的改革,支持和反對的幾乎各占一半。有些人支持這種做法,因為Python的除法運(yùn)算從一開始的設(shè)計就是失誤的,他們想要真正的除法;但有些人又不想因此修改自己的海量代碼····無論怎樣,這已經(jīng)是板上釘釘?shù)氖虑榱恕ython團(tuán)隊秉承著執(zhí)著、追求完美的信念不斷打造和改進(jìn)Python,就這件事情本身我們就應(yīng)為其點贊。
百分號(%)表示求余數(shù)的意思:
>>> 5 %2
1
>>> 4 % 2
>>> 520 % 14
2
優(yōu)先級問題
當(dāng)一個表達(dá)式存在多個運(yùn)算符的時候,就可能會發(fā)生以下對話。
加法運(yùn)算符說:“我先到的,我先計算!”
乘法運(yùn)算符說:“哥我運(yùn)算一次夠你翻幾個圈了,哥先來!”
減法運(yùn)算符說:“你糊涂了,我現(xiàn)在被當(dāng)成負(fù)號使用,沒有我,你們再努力,結(jié)果也是得到相反的數(shù)!”
除法運(yùn)算符這時候默默地說:“搶吧搶吧,我除以零,大家同歸于盡!”
為了防止以上矛盾的出現(xiàn),我們規(guī)定了運(yùn)算符的優(yōu)先級,當(dāng)多個運(yùn)算符同時出現(xiàn)在
一個表達(dá)式的時候,嚴(yán)格按照優(yōu)先級規(guī)定的級別來進(jìn)行運(yùn)算。
先乘、除,后加、減,如有括號先運(yùn)行括號里邊的。沒錯,從小學(xué)我們就學(xué)到了運(yùn)算符優(yōu)先級的精髓,在編程中也是這么繼承下來的。
舉個例子:
-3*2+5/-2-4
相當(dāng)于:
(-3)*2+5/(-4)-4
Python還有一個特殊的乘法,就是雙星號(**),也稱為冪運(yùn)算操作符。例如3**2,星號左側(cè)的3稱為底數(shù),右側(cè)的2稱為指數(shù),把這樣的算式稱為3的2次冪。
在使用Python進(jìn)行冪運(yùn)算的時候,需要注意的一點是優(yōu)先級問題。舉個例子:
>>> -5 ** 2
-25
>>> 5 ** -2
0.04
從上面的結(jié)果可以看出,冪運(yùn)算操作符比其左側(cè)的一元操作符優(yōu)先級高,比其右側(cè)的一元操作符優(yōu)先級低。
總結(jié)
以上是生活随笔為你收集整理的python标准算术操作符有哪些_在python中的算术操作符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么电动车解除限速了还是只能跑25码
- 下一篇: websocket python爬虫_p