剑客
关注科技互联网

python 之 'and' 和 'or'

两种逻辑运算符均为布尔逻辑运算,不返回一个布尔值,而是返回参与运算的两个变量中的一个。

一、python之and

在布尔上下文中,从左至右进行运算,如果两个变量表达式的运算结果都为真,则返回最后一个表达式的运算结果;如果某个变量表达式的运算结果为假,则返回第一个为假的表达式的运算结果。

1 #python 3.x
2 >>> a = 1-1
3 >>> b = 1+1
4 >>> c = False
5 >>> print (b and a and c)
6 
7 #输出
8 >>> 0

二、python之or

在布尔上下文中,从左到右进行运算,如果两个变量表达式的运算结果有一个真,则立刻返回该变量表达式的运算结果;如果所有变量表达式的运算结果都为假,则返回最后一个为假的表达式的运算结果。

 1 #python 3.x
 2 >>> a = False
 3 >>> b = 1+1
 4 >>> c = ''
 5 >>> d = 0
 6 >>> print (c or b or a)
 7 >>> print (c or a or d)
 8 
 9 #输出
10 >>> 2 
11 >>> 0

三、运算优先级

在python中,两者处于同一个优先级中,运算遵循从左到右的运算法则,且遵循以上的两种法则。

参考:http://www.cnblogs.com/BeginMan/p/3197123.html

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址