# 赋值符号 =# 把9复制给a
a = 9
# 复杂赋值
a = b =9
# 赋值的缩写
c = 100
c = c + 3
print(c)#结果:103#注意下面符号仅仅是一个缩写
c += 3
print(c)# 结果:106# 所有数学运算符都可以缩写# -= , *= , /= , //= , **= ,都是缩写形式# python里面没有 ++ , -- (自加,自减)
逻辑运算符
对布尔类型变量或者值进行运算的符号
and:逻辑与
or :逻辑或
not:逻辑非
python里面的逻辑运算没有异或
运算规则:
and看作乘法,or看作加法
True看作1,False看作0
则逻辑运算就能转换成整数数学运算
最后结果如果是0则为False,否则为True
逻辑运算的短路问题
逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再进行计算,直接返回
# 逻辑表达式举例:
a = True
b = True
c = False
aa = a and b #可以转换成 1 * *
print(aa)
#结果:True
bb = a * c
print(bb)
#结果:False
# 布尔值与数字的转换
# 数字转换成布尔值的时候, 0 = False,其余都是True
# 布尔值转换成数字的时候,True = 1,False=0
# 短路问题案例1
a = True
b = True
c = False
aa = a or b and (a and b)# 转换成算数1+...,最终结果一定大于1
print(aa)
结果:True
# 短路问题案例2
def a():
print('a')return True
def b():
print('b')return True
aaa = a() and b()
print(aaa)
print("*" * 20)# 字符串乘以数字,表示对这个字符串重复多少遍
bbb = a() or b()# 短路发生
print(bbb)# 结果:
a
b
True
********************
a
True
成员运算符
用来检测一个值或者变量是否在某个集合里面
in:成员运算符
not in:不在里面的意思
# in 案例
L =[1,2,3,4,5]
a = 6
aa = a in L
print(aa)# 结果:False# a 没在L里面
aa = a not in L
print(aa)# 结果 :True
身份运算符
用来确定两个变量是否是同一变量
is:变量运算符
is not:不是
对整数N \ in [-5,256],解释器对他们做了单独处理,放进了固定的内存中,不因你每次匀行儿变化
# 身份运算符定义
a = 1
b = 100
aa = a is b
print(aa)# 结果: False# a,b仅仅是一个值,并不代表a,b是一个变量
a = 100
b = 100
aa = a is b
print(aa)# 结果: False# 正确的理解# a,b仅仅是一个值,并不代表a,b是一个变量
a = 100
b = 100
aa = a is b
print(aa)# 结果: True
运算符优先级问题
小括号具有优先级(多个内嵌括号先算里后算外,多个连续,从左到右算) 指数 (最高优先级):** 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@):~ + - 乘,除,取模和取整除:* / % // 加法减法:+ - 右移,左移运算符:>> << 位 ‘AND’ :& 位运算符 :^ | 比较运算符:<= < > >= 等于运算符:<> == != 赋值运算符:= %= /= //= -= += *= **= 身份运算符:is is not 成员运算符:in not in 逻辑运算符:not or and