1073 多選題常見計分法 (20分)
阿新 • • 發佈:2020-08-07
[基本運算子]
目錄
- [算術運算子]
- [比較運算子]
- [賦值運算子]
- [邏輯運算子]
- 身份運算子
- 位運算子
- 成員運算子
- Python運算子優先順序
當我們眼前飄過一隻生物後,我們會立即獲得這個生物的資訊,種類、性別、身高、三維,當我們獲取這些資訊的同時,我們還會馬上對這些資訊做一些邏輯處理,如這個生物種類是老虎的時候,我們會跑開;這個生物是人,性別為女,但是身高只有一米三時,我們可能會不自覺地靠近?
算術運算子#
算術運算子就是我們從小學就開始抓起的加減乘除,這裡我就不多介紹,如果認為有問題的同學,可以抽空回到小學聯絡你小學班主任,讓他給你補補課。
Copyprint(1 + 2) Copy3 Copyx = 10 y = 20 res = x + y print(res) Copy30 Copy# /有零有整除,得到一個浮點型 print(10 / 3) Copy3.3333333333333335 Copy# 地板除,只取整數部分 print(10 // 3) print(10 // 4) Copy3 2 Copy# %:取餘 print(10 % 3) Copy1 Copy# **,冪 print(10**3) Copy1000
比較運算子#
此處直接貼圖了,以下假設變數a為10,變數b為20。
Copypwd = '123' print(pwd != '123') print(pwd == '123') CopyFalse True Copyl1 = [1, 'a', 3] l2 = [3] print(l1 < l2) # False CopyTrue Copytry: l3 = [1, 3] print(l1 < l3) # 報錯,列表比較大小僅限於同一位置的對應的值是相同的型別 except Exception as e: print(e) Copyname 'l1' is not defined
賦值運算子#
此處直接貼圖了,以下假設變數a為10,變數b為20。
Copyage = 19
age = age + 1
print(age)
Copy20
Copyage = 19
age += 1
print(age)
Copy20
Copyage = 19
age *= 10
print(age)
Copy190
邏輯運算子#
此處直接貼圖了,以下假設變數a為10,變數b為20。
Copy# 從左到右的方式找到邏輯運算子,找到邏輯運算子的左邊,左邊成立,再去找到邏輯運算子的右邊 print(3 > 3 and 1 > 2 or 2 > 1) # False CopyTrue
身份運算子#
身份運算子用於比較兩個物件的儲存單元。
is和==的區別:is用於判斷兩個變數引用物件是否為同一個(是否在同一塊記憶體空間中), ==用於判斷引用變數的值是否相等。
Copyx = 257
y = x
z = 257
print(f'x is y:{x is y}')
print(f'x == y:{x == y}')
print(f'x is z:{x is z}')
print(f'x == z:{x == z}')
Copyx is y:True
x == y:True
x is z:False
x == z:True
位運算子#
按位運算子是把數字看作二進位制來進行計算的。Python中的按位運演算法則如下:
下表中變數 a 為 60,b 為 13,二進位制格式如下:
Copya = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
Copya = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0
c = a & b
# 12 = 0000 1100
print("1 - c 的值為:", c)
Copy1 - c 的值為: 12
Copyc = a | b
# 61 = 0011 1101
print("2 - c 的值為:", c)
Copy2 - c 的值為: 61
Copyc = a ^ b
# 49 = 0011 0001
print("3 - c 的值為:", c)
Copy3 - c 的值為: 49
Copyc = ~a
# -61 = 1100 0011
print("4 - c 的值為:", c)
Copy4 - c 的值為: -61
Copyc = a << 2
# 240 = 1111 0000
print("5 - c 的值為:", c)
Copy5 - c 的值為: 240
Copyc = a >> 2
# 15 = 0000 1111
print("6 - c 的值為:", c)
Copy6 - c 的值為: 15
成員運算子#
除了以上的一些運算子之外,Python還支援成員運算子,測試例項中包含了一系列的成員,包括字串,列表或元組。
Copya = 10
b = 20
list = [1, 2, 3, 4, 5]
if (a in list):
print("1 - 變數 a 在給定的列表中 list 中")
else:
print("1 - 變數 a 不在給定的列表中 list 中")
Copy1 - 變數 a 不在給定的列表中 list 中
Copyif (b not in list):
print("2 - 變數 b 不在給定的列表中 list 中")
else:
print("2 - 變數 b 在給定的列表中 list 中")
Copy2 - 變數 b 不在給定的列表中 list 中
Copy# 修改變數 a 的值
a = 2
if (a in list):
print("3 - 變數 a 在給定的列表中 list 中")
else:
print("3 - 變數 a 不在給定的列表中 list 中")
Copy3 - 變數 a 在給定的列表中 list 中
Python運算子優先順序#
python運算子的優先順序相當於數學中的先算乘除再算加減,但是這很愚蠢,優先順序高的你括號括起來就行了...
Copya = 20
b = 10
c = 15
d = 5
e = 0
e = (a + b) * c / d #( 30 * 15 ) / 5
print("(a + b) * c / d 運算結果為:", e)
Copy(a + b) * c / d 運算結果為: 90.0
Copye = ((a + b) * c) / d # (30 * 15 ) / 5
print("((a + b) * c) / d 運算結果為:", e)
Copy((a + b) * c) / d 運算結果為: 90.0
Copye = (a + b) * (c / d); # (30) * (15/5)
print("(a + b) * (c / d) 運算結果為:", e)
Copy(a + b) * (c / d) 運算結果為: 90.0
Copye = a + (b * c) / d; # 20 + (150/5)
print("a + (b * c) / d 運算結果為:", e)
Copya + (b * c) / d 運算結果為: 50.0