Python學習之運算符

1。python的運算符大概看了下,主要的和其餘語言沒啥區別。加減乘除分別是:+,-,*,/,求餘(取模)是%,大因而>,小因而<,<=小於等於,==等於,!=不等於.基本經常使用的沒啥變化。
2. 也有些新的,好比**返回x的y次冪 舉例:3 ** 4獲得81(即3 * 3 * 3 * 3),//取整除,返回商的整數部分
3.<<左移 >>右移這個卻是通常不經常使用,可是還蠻有用。2 << 2獲得8。——2按比特表示爲10即2*(2**2)=8.一樣把一個數的比特向右移必定數目11 >> 1獲得5即11*(2**(-1))=5
4.
& 按位與 數的按位與 5 & 3獲得1。
| 按位或 數的按位或 5 | 3獲得7。
5.
^ 按位異或 數的按位異或 5 ^ 3獲得6
~ 按位翻轉 x的按位翻轉是-(x+1) ~5獲得6。

這個按位翻轉應該在其餘語言好像沒有,不過也通常用不到。
6.or ,and,not也沒啥變化。
7,。講到運算符,就必然要涉及到優先級的問題,如下表列出了python的優先級。

運算符優先級
運算符 描述
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,...' 字符串轉換
另外注意一點通常運算順序是從左向右即具備相同優先級的運算符按照從左向右的順序計算。例如,2 + 3 + 4被計算成(2 + 3) + 4。一些如賦值運算符那樣的運算符是由右向左結合的,即a = b = c被處理爲a = (b = c)。 注意:我在看運算符的時候發現少了賦值運算符,爲何不比較=的優先級呢。經過運行代碼,驗證了個人想法,在python中=不能參與運算,只能用來單獨賦值。例:在php中定義三個變量啊a,b,c如:$a=1,$b=2,$c=3,計算$a+$b=$c結果會輸出4而一樣的算式在python中會報錯。
相關文章
相關標籤/搜索