20、比较运算符和逻辑运算符

小白量化 2025-12-09 15:38:59 60 举报

1、运算符
1.1 比较运算符
1.1.1 作用
Python中的比较运算符用于比较两个值或表达式之间的关系,并根据比较结果返回布尔值 True 或 False。
这些运算符在条件语句(如 if 语句)、循环控制以及数据筛选等场景中非常有用。

1.1.2 运算符

① == 等于

# 示例1
print(1 == 1)
print(1 == 2)   # False
print('hi' == "hi")
print('hi' == 'he')    # Fals
# 示例2
age = 18
print(age == '18')   # False   类型不一致  字符串和数值类型无法比
# 示例3
age = 18.0
print(age == 18)   # True   值相同

② != 不等于

# 示例1
print(5 != 3)
print(5 != 5)   # False
# 示例2
name = "xiaobai"
print(name != "xiaoming")    # True
# 示例3
num = input("请输入一个数:")
print(num == 18)         # False

③ > 大于
④ >= 大于等于

# 示例
print(5 >= 3)
print(3 >= 3)

⑤ < 小于
⑥ <= 小于等于

# 示例
print(3 <= 8)



1.2 逻辑运算符
1.2.1 作用
可以将多个条件表达式组合起来,形成更复杂的条件判断语句。
有助于提高代码的可读性,使得程序的逻辑结构更清晰、易于理解和维护。此外,它们还支持短路行为,这在一定程度上提高了程序的执行效率,避免了不必要的计算或操作。

1.2.2 运算符

① and(与,且):当所有条件都为True时,整个表达式的结果才为True;否则结果为False

# 示例1
print(True and True)     # True
print(True and False)    # False
print(False and True)    # False
print(False and False)   # False
# 结论:一假即假,全真才真
# 示例2
x = 5
y = 10
z = -1
if x > 0 and y > 0 and z > 0:   # 5 > 0(True) and 10 > 0(True) and -15 > 0(False) ==> False    
    print("哈哈哈")

② or(或):只要其中一个条件为True,整个表达式的结果就为True;否则,结果为False。

# 示例1
print(True or True)     # True
print(True or False)    # True
print(False or True)    # True
print(False or False)   # False
# 结论:一真即真,全假才假
# 示例2
x = -5
y = -10
z = -15
if x > 0 or y > 0 or z > 0:   # -5 > 0(False) or -10 > 0(False) or -15 > 0(False)  ==>  False    
    print("哈哈哈")

③ not(非,否):用于反转条件的结果,如果条件为True,则结果为False;如果条件为False;则结果为True。

# 示例1
print(not True)   # False
print(not False)  # True
# 示例2
x = 15
if not x == 10:     # not 15 == 10 ==> not False  ==> True    # not x == 10  等效于 x != 10
    print("哈哈哈")


注意:在Python中,非零(如0、0.0、False、0j)非空(''、[]、()、{}、set()、None等)即为True。

# 示例3
x = ' '
if x:
    print("哈哈哈")

1.2.3 短路行为【拓展】
and:如果第一个操作数据为False,则整个表达式的结果立即确定为False,Python不会判断第二个操作数据
or:如果第一个操作数据为True,则整个表达式的结果立即确定为True,Python不会判断第二个操作数据

# 示例1
print(3 and 5)   # True and True
print(5 and 3)   # True and True
print(0 and 3)   # False and  ==>  False
print(3 and 0)   # True and False ==> False
print(3 and 5 and 8)  # True and True and True ==> 8
# 示例2
print(0 or 1)  # False or True ==> True(1)
print(3 or 5)  # True or ==>  True(3)
# 示例3
x = -5
y = -10
z = -1
if x or y or z > 0:   # -5(True) or -10 or -15 > 0 ==> True
    print("哈哈哈")


量化小白,从0开始学量化! 1

著作权归文章作者所有。 未经作者允许禁止转载!

最新回复 ( 0 )
发新帖
0