比较运算符
== 等于 - 比较对象是否相等
代码语言:javascript复制print(3 == 4); //False
!= 不等于 - 比较两个对象是否不相等
代码语言:javascript复制print(3 != 4); // True
<> 等于 - 比较两个对象是否不相等
代码语言:javascript复制print(3 <> 4); // True
> 大于 - 返回x是否大于y
代码语言:javascript复制print(3 > 4); // False
< 小于 - 返回x是否小于y
代码语言:javascript复制print(3 < 4); // True
>= 大于等于 - 返回x是否大于等于y
代码语言:javascript复制print(3 >= 4); //False
<= 小于等于 - 返回x是否小于等于y
代码语言:javascript复制print(3 <= 4); // True
注意点:与其它编程语言不同的是Python 支持链式比较,示列如下
代码语言:javascript复制i = 5;
print(3 < i < 7); // True
逻辑运算符
and 布尔"与" - -- 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值
代码语言:javascript复制a = 13;b = 0;
if a and b:
print("true");
else:
print("false");
上面代码运行为false
or 布尔"或" - -- 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值
代码语言:javascript复制a = 13;b = 0;
if a or b:
print("true");
else:
print("false");
上面代码运行为true
not 布尔"非" --- 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True
代码语言:javascript复制a = 13;b = 0;
if not(a and b):
print("true");
else:
print("false");
上面代码运行为true
结论:------ 当运算符两边的表达式都为真 使用and --------结果为真 (一真为假,两真才真)
------ 当运算符两边的表达式一个为真 使用or --------结果为真 (一真即为真)
------ 当运算符左边的表达式为真 使用not --------结果为假(本身为真,使用后为假)
注意
非布尔类型的值,如果作为真假来判定,一般都是非零即真,非空即真
代码语言:javascript复制print(bool("")) //False
整个逻辑表达式的结果不一定只是True 和 False
代码语言:javascript复制print(5 or False); // 1