Python運算符包括賦值運算符、算術運算符、關系運算符、邏輯運算符、位運算符、成員運算符和身份運算符。
表達式是將不同類型的數據(常亮、變量、函數)用運算符按照一定得規則連接起來的式子。
算術運算符和算術表達式
算術運算符包括四則運算符、求模預算符和冪運算符。
算術運算符 表達式 說明 + x + y 加法運算 - x - y 減法運算 * x * y 乘法運算 / x / y 除法運算 % x%y 求模運算 ** x**y x的y次方 // x // y 兩數相除向下取整Python中的除法運算(Python3.x)進行浮點數計算,也就是說 x/y返回的結果是浮點數。
%為取模運算,x%y的結果將是x除以y的余數。
如果要從整數相除中得到一個整數, 丟棄任何小數部分, 可以使用另一個操作符"//"。
x = 5 y = 3 a = 4 b = 2 print(x + y) #結果為 7 print(x - y) #結果為2 print(x * y) #結果為15 print(x / y) #結果為1.6666666666666667 不同的機器浮點數的結果可能不同 print(x // y) #向下去整結果為1 print(x % y) #兩數相除取余結果為2 print(x**y) #5的3次冪結果為125 print(a / b) #結果為浮點數2.0 print(a % b)#取余結果為0 print(a // b)#取整結果為2
關系運算符是對兩個對象進行比較。
運算符 表達式 說明 == a==b 等於,比較對象是否相等!=
或
<>
a !=b
a <>b
不等於,比較兩個對象是否不相等 > a > b 大於,比較a是否大於b < a < b小於,比較a是否小於b
>= a>=b 大於等於,比較a是否大於或者等於b <= a<=b 小於等於,比較a是否小於或者等於b
a = 4 b = 2 c = 2 print(a == b) #False print(a != b) #True print(a <> b) #True print(a > b) #True print(a < b) #False print(a >= b) #True print(c <= b) #True
邏輯運算符與邏輯運算表達式
運算符 表達式 說明 and a and b 邏輯與,當a為True時才計算b or a or b 邏輯或,當a為False時才計算b not not a 邏輯非a = 4 b = 2 c = 0 print(a>b and b>c) #a>b為True繼續計算b>c,b>c也為True則結果為True print(a>b and b<c)#a>b為True繼續計算c<b,b>c結果為False則結果為False print(a>b or c<b) #a>b為True則不繼續計算c<b,結果為True print(not c<b) #c<b為True not True結果為False print(not a<b) #a<b為False not Flase結果為True
位運算符
按位運算符是把數字看作二進制來進行計算的。
運算符 表達式 說明 & a & b按位與運算符:參與運算的兩個值,如果��個相應位都為1,則該位的結果為1,否則為0
| a | b 按位或運算符:只要對應的二個二進位有一個為1時,結果位就為1 ^ a ^ b按位異或運算符:當兩對應的二進位相異時,結果為1
~ ~a按位取反運算符:對數據的每個二進制位取反,即把1變為0,把0變為1
<< a<<2左移動運算符:運算數的各二進位全部左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。
>> a>>2右移動運算符:把">>"左邊的運算數的各二進位全部右移若干位,">>"右邊的數指定移動的位數
運算
操作
結果
a & b
0011 1100
& 0000 1101
0000 1100
12
a | b
0011 1100
| 0000 1101
0011 1101
61
a ^ b
0011 1100
^ 0000 1101
0011 0001
49
~a
~ 0011 1100
1100 0011
-61
有符號二進制數的補碼
a << 2
0011 1100 -> 1111 0000
240
a >>2
0011 1100-> 0000 1111
15
賦值運算符
運算符 表達式 說明 = c=a + b 簡單賦值運算符, 將 a + b 的運算結果賦值為 c += c +=a 加法賦值運算符 c += a 等效於 c = c + a -= c -=a 減法賦值運算符 c -= a 等效於 c = c - a *= c *=a乘法賦值運算符 c *= a 等效於 c = c * a
/= c /=a除法賦值運算符 c /= a 等效於 c = c / a
%= c %=a取模賦值運算符 c %= a 等效於 c = c % a
//= c //=a 冪賦值運算符 c **= a 等效於 c = c ** a **= c **=a取整除賦值運算符 c //= a 等效於 c = c // a
成員運算符,測試實例中包含了一系列的成員,包括字符串,列表或元組。
運算符 表達式 說明 in a in b 如果在指定的序列中找到值返回 True,否則返回 False。 not in a not in b 如果在指定的序列中沒有找到值返回 True,否則返回 False。a=4 c=0 list = [1,2,3,4,5] if (a in list): print("%d is in list:%r"%(a,list)) if (c not in list): print("%d is not in list: %r"%(c,list))
Python的算術表達式具有結合性和優先性。結合性是指表達式按照從左到右、先乘除後加減的原則進行計算。
Python運算符優先級(由高到低)
** 指數 (最高優先級)
~ + - 按位翻轉, 一元加號和減號 (正負號)
* / % // 乘,除,取模和取整除
+ - 加法減法
>> << 右移,左移運算符
& 位 'AND'
^ | 位運算符
<= < > >= 比較運算符
<> == != 等於運算符
= %= /= //= -= += *= **= 賦值運算符
is is not 身份運算符
in not in 成員運算符
not or and 邏輯運算符
另外,小括號可以改變優先級,有()的情況優先計算()中的表達式。
CentOS上源碼安裝Python3.4 http://www.linuxidc.com/Linux/2015-01/111870.htm
《Python核心編程 第二版》.(Wesley J. Chun ).[高清PDF中文版] http://www.linuxidc.com/Linux/2013-06/85425.htm
《Python開發技術詳解》.( 周偉,宗傑).[高清PDF掃描版+隨書視頻+代碼] http://www.linuxidc.com/Linux/2013-11/92693.htm
Python腳本獲取Linux系統信息 http://www.linuxidc.com/Linux/2013-08/88531.htm
在Ubuntu下用Python搭建桌面算法交易研究環境 http://www.linuxidc.com/Linux/2013-11/92534.htm
Python 語言的發展簡史 http://www.linuxidc.com/Linux/2014-09/107206.htm
Python 的詳細介紹:請點這裡
Python 的下載地址:請點這裡