python 笔记08
1.赋值运算符
num +=1 等价于 num = num + 1
num -=1 等价于 num = num - 1
num *=1 等价于 num = num * 1
num /=1 等价于 num = num / 1
num //2 等价于 num = num // 2
num %=2 等价于 num/2 的 余数
num ** 2 等价于 num = num*num
2.逻辑运算符
逻辑运算符包含:not、and、or
2.1 and的用法: (且、并且)
写法:条件1 and 条件2
eg: 5>3 and 6>2 , True
只有两个条件都为True的时候,结果才会为True!
and 真值表 | ||
---|---|---|
and | √ | × |
√ | √ | × |
× | × | × |
2.2 or的用法:(或、或者)
写法:条件1 or 条件2
eg: 5>3 or 6<2 , True
两个条件中只需要一个为True,结果就为True!
or 真值表 | ||
---|---|---|
or | √ | × |
√ | √ | √ |
× | √ | × |
2.3 not的用法:(不、雅蠛蝶)
写法: not 条件
可以理解为:负号,比如两个not not
就是负负得正,即为真。
eg01:
not 5>3
False
not 5<3
True
eg02:
not not 5>3
True
not not 5<3
False
提问:?
“a>b and c>d or not f”怎么运算?优先级是什么?
回答:不必记优先级!只需要加()就可以先运算。
比如:
a>b and (c>d or (not f))
那么计算的顺序为: not >> or >> and.
p.s:优先级为 not > and > or.不必记.
3.表达式
什么是表达式?
1+2* 3 就是一个表达式,这里的加号和乘号叫做运算符,1、2、3叫做操作数。1+2* 3 经过计算后得到的结果是7,就1+2* 3 = 7。我们可以将计算结果保存在一个变量里,ret = 1-2* 3 。 所以表达式就是由操作数和运算符组成的一句代码或语句,表达式可以求值,可以放在“=”的右边,用来给变量赋值。
4.短路原则
对于and,如果前面的条件为假,那么这个and前后两个条件组成的表达式的计算结果就一定为假,第二个条件就不会被计算。
对于or,如果前面的条件为真,那么结果就一定为真,第二个条件不被计算;
如果前面条件为假,那么再继续计算条件二。
eg:
not not True or False and not True
True # not not ,负负得正,那么or前面一旦是True,那么后面的计算就不会进行了。
True or True and False
True # 因为or前面是true了,就不会再计算后面的 True and False 了,即是and 的优先级大于or!