目录
1,算术运算符
由 + ,- ,* , / , % (取余) ,// (取整除) ,** (幂次方) 组成
优先级:先次方后乘除再加减,有括号先算括号内的。
# 算术运算符
x = 16
y = x + 1
y1 = x - 1
y2 = x*2
y3 = x/2
y4 = x % 2 #用作与判断是否整除,倍数
y5 = x // 3 # 整除
y6 = x ** (1/2) # 次方
y7 = 5//2+3*2-8/2**2 # 先次方 后 乘除 后 加减
print(y)
print(y1)
print(y2)
print(y3)
print(y4)
print(y5)
print(y6)
print(y7)
输出结果:
2,比较运算符
由 > , < , >= ,<= , == , != 组成
# 比较运算符
print(5 > 3) # True
print(5 < 3) # False
print(5 >= 3) # True
print(5 <= 3) # False
print(5 == 3) # False
print(5 != 3) # True
# 特殊的
print(True == 1) # True
print(None == False) # False
print('True' == True) # False
print('' == False) # False
print(False == 0.0) # True
输出结果:
3,赋值运算符
由 = , += , -= , *= , /= , %= , //= , **= 组成
# 赋值运算符
x =3
print(x)
x += 2 # x = x + 2
print(x)
x -= 2 # x = x - 2
print(x)
x *= 2 # x = x * 2
print(x)
x /= 2 # x = x / 2
print(x)
x **= 2 # x = x ** 2
print(x)
x //= 2 # x = x // 2
print(x)
x %= 2 # x = x % 2
print(x)
输出结果:
4,逻辑运算符
由 and (且) , or (或) not (非) 组成
优先级:先 not 再 and 后 or
口诀:and 一假为假;
or 一真为真;
not 非真既假,非假既真。
# 逻辑运算符
# and且 or或 not非
print(True and True) # True
print(True and False) # False
print(False and True) # False
print(False and False) # False
print(6 and 1)
print(6 or 5 or 15 or 11)
print(not 0)
print(True or True) # True
print(True or False) # True
print(False or True) # True
print(False or False) # False
print((True or True) and False)
print(not True)
print(not False and False)
输出结果:
5,成员运算符
由 in 和 not in 组成,返回结果只有True 和False , 例如 , in 数字a在集合B里面了返回True,不在里面了返回False; not in 数字a在集合B里面了返回False,不在里面了返回True;
# 成员运算符
print('x' in 'xyz')
print('k' not in '1234k6abc')
print('5' in '12345')
print(5 in (1, 2, 3, 4, 5, 6, 7))
输出结果:
6,身份运算符
由 is 和 is not 组成,判断 储存地址是否相同,is 相同了返回True, 不同了返回Flase; is not 相同了返回False;不同了返回True
# 身份运算符
# is 用于判断内存地址是否一致
x = -400
y = -400
z = -200
print(x is y,id(x),id(y))
print(x is z,id(x),id(z))
print(x is not y,id(x),id(y))
print(x is not z,id(x),id(z))
输出结果:
7,位运算符
前提条件:需要先转换为二进制才能计算。
& 与 一 一为一,其它为零;
| 或 零零为零, 其它为一;
^ 异或 相等为零, 不等为一;
~ 取反 按位翻转,1 翻转为 0 ,0 翻转为 1;
<< 左移 增大数据,后补零;
>> 右移 缩小数据。
# 位运算符
x = 0b11
y = 0b101
print(x & y) # 与 11为1 其他为0
print(x | y) # 或 00为0 其他为1
print(x ^ y) # 异或 相等为0 不等为1
print(~x) #反
print(x << 3) # 左移 后补零 增大数据
print(x >> 3) # 右移 缩小数据
输出结果:
二进制输出结果: