1.算术运算符
python中的算术运算符有: +、 - 、* 、/ 、** 、//
num1 = 10
num2 = 5
print(f"{num1} + {num2} = {num1 + num2}")
print(f"{num1} - {num2} = {num1 - num2}")
print(f"{num1} * {num2} = {num1 * num2}")
#除:返回值为float类型
print(f"{num1} /{num2} = {num1 / num2}")
print(f"{num1}%{num2} = {num1 % num2}")
#求余数可以判断奇数偶数,任意数余n有n种情况:0-(n-1)
#最常用的是对2求余数,只有两种情况:0/1,余数为0-偶数,余数为1-奇数
# m**n n个m相乘
print(f"{num1}**{num2} = {num1 ** num2}")
#整除:返回值为int类型
print(f"{num1}//{num2} = {num1 // num2}")
2.赋值运算符
python中的赋值运算符有: =、+=、-=、 *=、/=、%=、**=、//=
# value += 5 等于 value = value + 5
value = 15
value += 5
print(value)
value -= 5
print(value)
# value -= 5等同于value = value - 5
value *= 5
print(value)
# value *= 5等同于value = value * 5
value /= 5
print(value)
# value /= 5等同于value = value / 5
value %= 5
print(value)
# value %= 5等同于value = value % 5
value //= 5
print(value)
# value //= 5等同于value = value // 5
value **= 5
# value **= 5等同于value = value ** 5
print(value)
3.比较运算符
python中的比较运算符有:>、 >=、 <、 <=、 !=、 ==
输出结果为True或False
print(5 > 2, 6 >= 6)
print(5 < 2, 6 <= 6)
print(5 != 2, 6 == 6)
# 类型不一样 结果为False
print(5 == "5", False == "False")
# 对于布尔类型来说,True为1 False为0
print(0 == False, 1 == True)
# python可以使用连续比较 只要有一个不成立,结果就为假
print(5 > 3 > 1, 8 < 10 < 50)
# 算术运算符 优先级 高于 比较运算符
# 比较运算符 优先级 高于 赋值运算符
# 赋值运算符优先级最低
result = 0 > 3-1
print(result)
4.逻辑运算符
python中的逻辑运算符有:and or not
# 逻辑运算符 and or not
# 四种假 None False "" 0
# and--&& or--|| not--!
# and 结果不是True和False 而是and左侧或者右边
# 左侧为真-返回右侧 左侧为假-直接返回左侧
print(True and True)
print(False and 10)
print("" and 10)
print(0 and 10)
print(True and 10)
# or 的结果是左侧或者右侧
# or 左侧为真-返回左侧 左侧为假-返回右侧
print(True or 10)
print(0 or 10)
print(False or 90)
print(False or False)
print("" or False)
print(None or False)
# not 取反 结果为True或False
print(not 0)
print(not 10)
5.位运算符
python中的位运算符有:按位与 &、按位或 |、按位异或 ^,>>右移,<<左移以二进制数为例:
& 按位与:相同位置都为1,结果就是1;有一个为0,结果就是0
| 按位或:相同位置都为0 ,结果就是0;有一个为1,结果就是1
^ 按位异或:相同位置相同为,结果为0,不同结果为1
>> 右移,数值变小,最右侧数删除
<< 左移,右侧补0,数值变大
# 位运算符 按位与& 按位或| 按位异或^
# & 按位与 相同位置全为1 结果就是1 有一个为0 结果就是0
a = 0b1010
b = 0b1111
# 0b1010 == 10
print(a & b)
# | 按位或 相同位置全为0 结果就是0 有一个为1 结果就是1
# 0b11111 == 15
print(a | b)
# ^ 按位异或 相同位置 相同为0 不同为1
# 0b0101 == 5
print(a ^ b)
# >> 右移,数值变小,右侧删除 << 左移,右侧补0,数值变大
print(a >> 1)
# a = 0b101 = 5
print(b << 1)
# b = 0b11110 = 30