python return中的or和and语句
2018-04-08 23:53 ZealouSnesS 阅读(5002) 评论(0) 编辑 收藏 举报python return中的or和and语句
1、二元运算:
如果一个True,一个False或两个false:
return True and False # 返回False
return True or False # 返回True
如果两边都是True,则and返回右边的,or返回左边的:
return 1 or 2 # 返回1
return 1 and 2 # 返回2
2、多元运算:
从左到右,两两运算,两两运算时逻辑见上面二元运算
例如下面三句代码,第一句返回1,第二句返回3,第三句返回2
return 1 or 2 or 3
return 1 and 2 and 3
return 1 and 2 or 3
疑问:
同时,是否继续执行下去,要看二元运算时前面元素的值
and:遇假则假,所以前面为假就不执行和判断后面,前面为真则继续判断执行后面的; # 这句不正确,例如下面这句代码的返回值就是2
return 0 and 1 or 2
or:遇真则真,所以前面为真就不执行和判断后面,前面为假则继续判断执行后面的。 # 这句正确,但不知道为什么,例如下面这句代码的返回值就是1
return 1 or 2 and 3