python 運算符號python
在python運算時候,參加運算的數字有小數,結果纔會有小數。ide
運算符spa |
名稱對象 |
說明內存 |
例子ci |
+字符串 |
加it |
兩個對象相加table |
3 + 5獲得8。'a' + 'b'獲得'ab'。class |
- |
減 |
獲得負數或是一個數減去另外一個數 |
-5.2獲得一個負數。50 - 24獲得26。 |
* |
乘 |
兩個數相乘或是返回一個被重複若干次的字符串 |
2 * 3獲得6。'la' * 3獲得'lalala'。 |
** |
冪 |
返回x的y次冪 |
3 ** 4獲得81(即3 * 3 * 3 * 3) |
/ |
除 |
x除以y |
4/3獲得1(整數的除法獲得整數結果)。4.0/3或4/3.0獲得1.3333333333333333 |
// |
取整除 |
返回商的整數部分 |
4 // 3.0獲得1.0 |
% |
取模 |
返回除法的餘數 |
8%3獲得2。-25.5%2.25獲得1.5 |
<< |
左移 |
把一個數的比特向左移必定數目(每一個數在內存中都表示爲比特或二進制數字,即0和1) |
2 << 2獲得8。——2按比特表示爲10 |
>> |
右移 |
把一個數的比特向右移必定數目 |
11 >> 1獲得5。——11按比特表示爲1011,向右移動1比特後獲得101,即十進制的5。 |
& |
按位與 |
數的按位與 |
5 & 3獲得1。 |
| |
按位或 |
數的按位或 |
5 | 3獲得7。 |
^ |
按位異或 |
數的按位異或 |
5 ^ 3獲得6 |
~ |
按位翻轉 |
x的按位翻轉是-(x+1) |
~5獲得-6。 |
< |
小於 |
返回x是否小於y。全部比較運算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價。注意,這些變量名的大寫。 |
5 < 3返回0(即False)而3 < 5返回1(即True)。比較能夠被任意鏈接:3 < 5 < 7返回True。 |
> |
大於 |
返回x是否大於y |
5 > 3返回True。若是兩個操做數都是數字,它們首先被轉換爲一個共同的類型。不然,它老是返回False。 |
<= |
小於等於 |
返回x是否小於等於y |
x = 3; y = 6; x <= y返回True。 |
>= |
大於等於 |
返回x是否大於等於y |
x = 4; y = 3; x >= y返回True。 |
== |
等於 |
比較對象是否相等 |
x = 2; y = 2; x == y返回True。x = 'str'; y = 'stR'; x == y返回False。x = 'str'; y = 'str'; x == y返回True。 |
!= |
不等於 |
比較兩個對象是否不相等 |
x = 2; y = 3; x != y返回True。 |
not |
布爾「非」 |
若是x爲True,返回False。若是x爲False,它返回True。 |
x = True; not x返回False。 |
and |
布爾「與」 |
若是x爲False,x and y返回False,不然它返回y的計算值。 |
x = False; y = True; x and y,因爲x是False,返回False。在這裏,Python不會計算y,由於它知道這個表達式的值確定是False(由於x是False)。這個現象稱爲短路計算。 |
or |
布爾「或」 |
若是x是True,它返回True,不然它返回y的計算值。 |
x = True; y = False; x or y返回True。短路計算在這裏也適用。 |
計算順序:
默認地,運算符優先級表決定了哪一個運算符在別的運算符以前計算。然而,若是你想要改變它們的計算順序,你得使用圓括號。例如,你想要在一個表達式中讓加法在乘法以前計算,那麼你就得寫成相似(2 + 3) * 4的樣子。
運算符一般由左向右結合,即具備相同優先級的運算符按照從左向右的順序計算。例如,2 + 3 + 4被計算成(2 + 3) + 4。一些如賦值運算符那樣的運算符是由右向左結合的,即a = b = c被處理爲a = (b = c)。