1.算数运算符(+ - * / % ** //)
num1 = 10
num2 = 3
print(f"{num1}+{num2}={num1+num2}")
print(f"{num1}-{num2}={num1-num2}")
print(f"{num1}*{num2}={num1*num2}")
print(f"{num1}/{num2}={num1/num2}")
print(f"{num1}%{num2}={num1%num2}") #求余数,任意一个有余数n有n种情况0-(n-1);求余数,经常用于判定奇偶数
print(f"{num1}**{num2}={num1**num2}") #m**n就是n个m相乘
print(f"{num1}//{num2}={num1//num2}") #m//n,整除:结果为int类型
优先级:** 高于 // 高于 / * % 高于 + -
2.赋值运算符
value = 10 #10赋值给value
value = 10+10 # 10+10赋值给value
value +=10 # value=value+10
value -=10 # value=value-10
value *=10 # value=value*10
value /=10 # value=value/10
value %=3 # value=value%3
value **=3 # value=value**3
value //=3 # value=value//3
print(value)
优先级:算数运算符优级高于赋值运算符
3.比较运算符
比较运算符结果永远为True或者 False
print(5>3, 5>=3)
print(5<3, 5<=3)
print(5!=3, 5==3)
类型不同,结果为False
print(5=="5")
print(0=="false", 1=="True")
print(0 == False, 1 == True) #对于布尔来说,True为1,False为0
print(5 > 3 > 1) #在Python中可以使用连续比较
算术运算符优先级 高于 比较运算符; 比较运算符优先级 高于 赋值运算符
result = 5 > 3 + 2 # result = True + 1
print(result)
4.逻辑运算符
1.and(&&)
and的结果不是True和False,而是and的左侧或者右侧
and 左侧为真,返回右侧;左侧为假(四种情况:None False 0 ""),直接返回左侧
result = True and False
print(result) #结果为False
result = True and 100
print(result) #结果为100
result = 0 and 100
print(result) #结果为0
2.or(||)
or 的结果不是True和False,而是左侧或者右侧;or 左侧为真,返回左侧or ;左侧为假,返回右侧
result = True or False
print(result) #结果为True
#or 左侧为真,返回左侧
result = "Hello" or False
print(result) #结果为Hello
#or 左侧为假,返回右侧
result = 0 or False
print(result) #结果为False
3.not(!)
not 的结果就是True或者False
result = not 0
print(result) #结果为True
优先级:and优先级 高于 or, not 优先级 高于 and ,即not > and > or。
result = False or True and 0
print(result) #结果为0
result = False or not 0
print(result) #结果为True
5.位运算符(二进制)
1. &
相同位置全为1,结果就是1,有一个为0,则结果为0
a = 0b10101
b = 0b01111
# 0b00101
print(a & b)
2. |
相同位置全为0,结果就是0,有一个为1,则结果为1
a = 0b10101
b = 0b01111
# 0b11111
print(a | b)
3. ^
按位异或:相同位置,相同为0,不同为1
a = 0b10101
b = 0b01111
# 0b11010
print(a ^ b)
4. >>
依次向右移动,最右侧移除
a = 0b10101
b = 0b01111
# 1010
print(a >> b)
5. <<
依次向左移动,最右侧补0
a = 0b10101
b = 0b01111
# 1010100
print(a << b)
6.成员运算符
in, not in,通常用于字符串、元组......
s = "hello world"
print("hello" in s) #结果为True