Python3學習:運算符集合講解開講啦!打開你們的小桌板,開始學習咯!
- Python語言支持的運算符
(1)算術運算符
(2)比較(關係)運算符
(3)賦值運算符
(4)邏輯運算符
(5)位運算符
(6)成員運算符
(7)身份運算符
- 算術運算符
(1) + (加):兩個對象相加
(2) - (減):兩個數相減,得到一個負數或者正數
(3) * (乘):兩個數相乘或者是返回一個被重複若干次的字符串
(4) / (除):兩數相除
(5) % (取模):兩數相除,返回除法的餘數
(6) ** (冪):返回x的y次冪
(7) // (取整除):向下取接近除數的整數
- 比較(關係)運算符:返回True或False
(1) == (等於) :比較兩個對象是否相等
(2) != (不等於):比較兩個對象是否不相等
(3) > (大於): 返回x是否大於y
(4) < (小於): 返回x是否小於y
(5) >= (大於等於): 返回x是否大於等於y
(6) <= (小於等於): 返回x是否小於等於y
注意:所有比較運算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價。注意,這些變量名的大寫。
本期的Python學習還是乾貨滿滿的,接下來繼續來看。
- 賦值運算符
(1) = (簡單的賦值運算符) :c = a + b
(2) += (加法賦值運算符) : a += b 等價於 a = a + b
(3) -= (減法賦值運算符) : a -= b 等價於 a = a - b
(4) = (乘法賦值運算符) : a = b 等價於 a = a * b
(5) /= (除法賦值運算符) : a /= b 等價於 a = a / b
(6) %= (取模賦值運算符) : a %= b 等價於 a = a % b
(7) = (冪賦值運算符) : a = b 等價於 a = a ** b
(8) //= (取整除賦值運算符) : a //= b 等價於 a = a // b
- 邏輯運算符
變量a爲10,變量b爲20
(1) and (布爾與) : 如果 x 爲 False,x and y 返回 False,否則它返回 y 的計算值。(a and b)返回20。
(2) or (布爾或):如果 x 是 True,它返回 x 的值,否則它返回 y 的計算值。(a or b)返回10。
(3) not (布爾非):如果 x 爲 True,返回 False 。如果 x 爲 False,它返回 True。 not(a and b)返回False
- 位運算符
(1) & (按位與運算符):參與運算的兩個值,如果兩個相應位都爲1,則該位的結果爲1,否則爲0(11爲1,其餘爲0)
(2) | (按位或運算符):參與運算的兩個值,如果兩個相應位其中一個爲1,則該位的結果爲1,否則爲0 (有1爲1,00爲0)
(3) ^ (按位異或運算符):參與運算的兩個值,如果兩個相應位一個爲1,一個爲0,則該位的結果爲1,否則爲0(異爲1,同爲0)
(4) ~ (按位取反運算符):對數據的每個二進制位取反,即把1變爲0,把0變爲1。~x 類似於 -x-1 (1變0, 0變1)
(5) << (左移運算符):運算數的各二進位全部左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。
(6) >> (右移運算符):運算數的各二進位全部右移若干位,由">>"右邊的數指定移動的位數。
Python3學習:運算符集合講解
- 成員運算符
(1) in : (x in y)判斷x是否在序列y中,如果x在序列y中返回True,不在返回False。
(2) not in: (x not in y)判斷x不在序列y中,如果x不在序列y中返回True,在序列y中返回False。
- 身份運算符
(1) is : is是判斷兩個標識符是不是引用自一個對象,如果引用的是同一個對象則返回True,否則返回False。
(2) is not : is not是判斷兩個標識符是不是引用自不同對象,如果引用的不是同一個對象則結果返回True,否則返回False。
- 運算符的優先級(由高到低)
運算符 描述
(1) ** 指數 (最高優先級)
(2) ~ + - 按位翻轉, 一元加號和減號 (最後兩個的方法名爲 +@ 和 -@)
(3) * / % // 乘,除,取模和取整除
(4) + - 加法減法
(5) >> << 右移,左移運算符
(6) & 位 'AND'
(7) ^ | 位運算符
(8) <= < > >= 比較運算符
(9) == != 等於運算符
(10) = %= /= //= -= += = *= 賦值運算符
(11) is is not 身份運算符
(12) in not in 成員運算符
(13) not and or 邏輯運算符
- is 與 == 區別:
is 用於判斷兩個變量引用對象是否爲同一個,
== 用於判斷引用變量的值是否相等。
示例代碼:
!/usr/bin/python3
-- coding: utf-8 --
author : liuhefei
Time : 2019/11/4
desc: Python運算符
if name == "__main__":
a = 33
b = 24
# 算術運算符
c1 = a + b # 加法
c2 = a - b # 減法
c3 = a * b # 乘法
c4 = a / b # 除法
c5 = a % b # 取模
c6 = a ** 2 # 冪
c7 = a // b # 取整除
print("加法c1 = ", c1)
print("減法c2 = ", c2)
print("乘法c3 = ", c3)
print("除法c4 = ", c4)
print("取模c5 = ", c5)
print("冪c6 = ", c6)
print("取整除c7 = ", c7)
print("n")
#比較運算符
if (a == b):
print("1 - a 等於 b")
else:
print("1 - a 不等於 b")
if (a != b):
print("2 - a 不等於 b")
else:
print("2 - a 等於 b")
if (a < b):
print("3 - a 小於 b")
else:
print("3 - a 大於等於 b")
if (a > b):
print("4 - a 大於 b")
else:
print("4 - a 小於等於 b")
# 修改變量a,b的值
a = 14
b = 8
if (a <= b):
print("5 - a 小於等於 b")
else:
print("5 - a 大於 b")
if (b >= a):
print("6 - b 大於等於 a")
else:
print("6 - b 小於 a")
print("n")
# 賦值運算符
a = 17
b = 25
c = 0
c = a + b
print("1 - c 的值爲:", c)
c += a
print("2 - c 的值爲:", c)
c *= a
print("3 - c 的值爲:", c)
c /= a
print("4 - c 的值爲:", c)
c = 2
c %= a
print("5 - c 的值爲:", c)
c **= a
print("6 - c 的值爲:", c)
c //= a
print("7 - c 的值爲:", c)
print("n")
# 位運算符
x1 = 77 # 100 1101
x2 = 29 # 1 1101
y1 = x1 & x2 # 0000 1101
y2 = x1 | x2 # 0101 1101
y3 = x1 ^ x2 # 0101 0000
y4 = ~x1 # -0b1001110
y5 = x1 << 2 # 0b100110100
y6 = x2 >> 3 # 0000 0011
print("按位與運算(&)y1 = ", y1)
print("按位或運算(|)y2 = ", y2)
print("按位異或運算(^)y3 = ", y3)
print("按位取反運算(~)y4 = ", y4)
print("左移運算(<<)y1 = ", y5)
print("右移運算(>>)y1 = ", y6)
print("n")
# 邏輯運算
n = 13
m = 4
if n and m:
print("1 - 變量n和m都爲true")
else:
print("1 - 變量n和m有一個爲False")
if n or m:
print("2 - 變量n和m都爲True,或其中一個爲True")
else:
print("2 - 變量n和m都爲False")
if not n:
print("3 - 變量n爲False")
else:
print("3 - 變量n爲True")
if not (n and m):
print("4 - 變量n和m都爲False,或其中一個爲False")
else:
print("4 - 變量n和m都爲True")
print("n")
# 成員運算符
a1 = 12
b1 = 3
list = [1, 2, 3, 4, 5]
if a1 in list:
print("1 - 變量a1 在給定的列表list中")
else:
print("1 - 變量a1 不在給定的列表list中")
if b1 not in list:
print("2 - 變量b1 不在給定的列表list中")
else:
print("2 - 變量b1 在給定的列表list中")
print("n")
# 身份運算符
s1 = 100
s2 = 'a'
if s1 is s2:
print("1 - s1和s2引用自一個對象")
else:
print("1 - s1和s2來自不同的對象")
if s1 is not s2:
print("2 - s1和s2來自不同的對象")
else:
print("2 - s1和s2引用自同一個對象")
更多的Python學習教程也會繼續爲大家更新,歡迎大家的補充!