運算符

運算符 名稱 說明 例子
+ 兩個對象相加 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 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 y返回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。短路計算在這裏也適用。

運算符優先級,從最低的優先級(最鬆散地結合)到最高的優先級(最緊密地結合)

運算符 描述
lambda Lambda表達式
or 布爾“或”
and 布爾“與”
not x 布爾“非”
in,not in 成員測試
is,is not 同一性測試
<,<=,>,>=,!=,== 比較
| 按位或
^ 按位異或
& 按位與
<<,>> 移位
+,- 加法與減法
*,/,% 乘法、除法與取餘
+x,-x 正負號
~x 按位翻轉
** 指數
x.attribute 屬性參考
x[index] 下標
x[index:index] 尋址段
f(arguments...) 函數調用
(experession,...) 綁定或元組顯示
[expression,...] 列表顯示
{key:datum,...} 字典顯示
'expression,...' 字符串轉換

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章