python運行版本3.6.3
IDE PyCharm 教育版
運算符
- + (加)
兩個對象相加。
3+5 則輸出 8 。 ‘a’ + ‘b’ 則輸出 ‘ab’ 。 - - (減)
從一個數中減去另一個數,如果第一個操作數不存在,則假定爲零。
-5.2 將輸出一個負數, 50 - 24 輸出 26 。 - * (乘)
給出兩個數的乘積,或返回字符串重複指定次數後的結果。
2 * 3 輸出 6 。 ‘la’ * 3 輸出 ‘lalala’ 。 - ** (乘方)
返回 x 的 y 次方。
3 ** 4 輸出 81 (即 3 * 3 * 3 * 3 )。 - / (除)
x 除以 y,真除法,不取整
13 / 3 輸出 4.333333333333333 。 - // (整除)
x 除以 y 並對結果向下取整至最接近的整數。
13 // 3 輸出 4 。-13 // 3 輸出 -5 。 - << (左移)
將數字的位向左移動指定的位數。(每個數字在內存中以二進制數表示,即 0 和1)
2 << 2 輸出 8 。 2 用二進制數表示爲 10 。向左移 2 位會得到 1000 這一結果,表示十進制中的 8 。 - >> (右移)
將數字的位向右移動指定的位數。
11 >> 1 輸出 5 。11 在二進制中表示爲 1011 ,右移一位後輸出 101 這一結果,表示十進制中的5 。 - & (按位與)
對數字進行按位與操作。5 & 3 輸出 1 。 - | (按位或)
對數字進行按位或操作。5 | 3 輸出 7 。 - ^ (按位異或)
對數字進行按位異或操作。5 ^ 3 輸出 6 。 - ~ (按位取反)
x 的按位取反結果爲 -(x+1)。~5 輸出 -6 。 - < (小於)
返回 x 是否小於 y。所有的比較運算符返回的結果均爲 True 或 False 。請注意這些名稱之中的大寫字母。
5 < 3 輸出 False , 3 < 6 輸出 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>=3 返回 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 時, x = False; y = True; x and y 將返回 False 。在這一情境中,
Python 將不會計算 y,因爲它已經瞭解 and 表達式的左側是 False ,這意味着整個
表達式都將是 False 而不會是別的值。這種情況被稱作短路計算(Short-circuit
Evaluation)。 - or (布爾“或”)
如果 x 是 True ,則返回 True ,否則它將返回 y 的計算值。
x = Ture; y = False; x or y 將返回 Ture 。在這裏短路計算同樣適用。
數值運算與賦值
變量 = 變量 運算 表達式 可以寫成 * 變量 運算 = 表達式* 。同C語言
a=a*2 等價於 a*=2
優先級
優先級依次升高:
- lambda :Lambda 表達式
- if - else :條件表達式
- or :布爾“或”
- and :布爾“與”
- not x :布爾“非”
- in, not in, is, is not, <, <=, >, >=, !=, == :比較,包括成員資格測試(Membership Tests)和身份測試(Identity Tests)。
- | :按位或
- ^ :按位異或
- & :按位與
- <<, >> :移動
- +, - :加與減
- *, /, //, % :乘、除、整除、取餘
- +x, -x, ~x :正、負、按位取反
- ** :求冪
- x[index], x[index:index], x(arguments…), x.attribute :下標、切片、調用、屬性引用
- (expressions…), [expressions…], {key: value…}, {expressions…} :表示綁定或元組、表示列表、表示字典、表示集合
其他
結合性和括號使用同C語言