數據運算運算符
and運算
a and b a,b都為真才為真
or運算
a and b a,b其中一個為真就是真。
not運算
in
not in
a=[1,2,3]
if 3 not in a :print("zhazha")
a=4
b=3
if not a>b: #條件是真不輸出,條件是假就輸出
print("bbb")
is #判斷標識符是不是引用自同一個對象
is not #判斷標識符是不是引用自不同同對象
a=[1,2,3]
if type(a) is list:
print(111)
8bit=byte(字節)
1024byte=1kbyte
1024kbyte=1mbyte
1024gb=1tb
and(&)
c=60&13 #雙方相同的部分相加
128 64 32 16 8 4 2 1
0 0 1 1 1 1 0 0 =60
0 0 0 0 1 1 0 1 =13
答 0 0 0 0 1 1 0 0=12
or
c=60|1 # 雙方相同的和不同的相加
128 64 32 16 8 4 2 1
0 0 1 1 1 1 0 0 =60
0 0 0 0 1 1 0 1 =13
答 0 0 1 1 1 1 0 1=61
c=60^13(按位異或運算)# 雙方不同部分相加
0 0 1 1 1 1 0 0 =60
0 0 0 0 1 1 0 1 =13
答 0 0 1 1 0 0 0 1=49
c=60~13(按位取反運算) #把互相的1變成0,,0變成1得到的結果相減
128 64 32 16 8 4 2 1
0 0 1 1 1 1 0 0 =60
1 1 0 0 0 0 1 1=195
0 0 0 0 1 1 0 1 =13
1 1 1 1 0 0 1 0=256
答 -61
左移,右移
《 》
128 64 32 16 8 4 2 1
c=64<<1 # c=128 # 位置往左移
c1=64>>1 # c=32 # 位置往右移
print(c)
print(c1)
三元運算
a,b,c=1,3,5
d=a if a>b else c #如果a>b,結果就是a,否則就位c
‘‘‘
運算符優先級
以下表格列出了從最高到最低優先級的所有運算符:
** 指數 (最高優先級)
~ + - 按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@)
- / % // 乘,除,取模和取整除
-
- 加法減法
> << 右移,左移運算符
& 位 ‘AND‘
^ | 位運算符
<= < > >= 比較運算符
<> == != 等於運算符
= %= /= //= -= += *= **= 賦值運算符
is is not 身份運算符
in not in 成員運算符
not and or 邏輯運算符
- 加法減法
數據運算運算符