Python 3 – 逻辑运算符
逻辑运算符用于对值和变量执行某些逻辑运算。这些是执行一些逻辑计算的特殊保留关键字。运算符操作的值称为操作数。在Python中,它们用于条件语句(True 或 False),因此,它们仅返回布尔值(True 或 False)。它们用于组合条件语句
Python语言支持以下逻辑运算符:
- 逻辑与
- 逻辑或
- 逻辑非
逻辑与
逻辑运算符AND仅当两个操作数都为 True 时才返回 True,否则返回 False。它是一个二元运算符,意思是返回一些值,它必须在两个运算符之间进行操作(即需要两个运算符)
真值表:Operator A Operator B Logical AND result True True True True False False False True False False False False
示例 1:
Python3
a = 12
b = 26
c = 4
if a > b and a > c:
print("Number a is larger")
if b > a and b > c:
print("Number b is larger")
if c > a and c > b:
print("Number c is larger")
Python3
a = 10
if (a == 0 and "Hello"):
print("a has value zero(0)")
else:
print("a is not equal to zero")
Python3
a = 10
b = -5
if a < 0 or b < 0:
print("Their product will be negative")
else:
print("Their product will be positive")
Python3
a = 10
if (a == 0 or "GeeksForGeeks"):
print("Is Awesome")
else:
("Try Again!")
Python3
a = 10
if not a == 10:
print ("a not equals 10")
else:
print("a equals 10")
Python3
a = 10
if not a%5 == 0:
print("a is not perfectly divisible by 5")
else:
print("a is perfectly divisible by 5")
输出:
Number b is larger
示例 2:
Python3
a = 10
if (a == 0 and "Hello"):
print("a has value zero(0)")
else:
print("a is not equal to zero")
输出:
a is not equal to zero
如果在使用 and运算符时第一个表达式的计算结果为 false,则不会计算其他表达式。此外,任何字符串总是被认为是一个真实的陈述。在上面的例子中,第一个条件为假,因此它不会检查第二个条件,因此它不会检查另一个条件,它将转到else语句。
逻辑或
逻辑运算符OR仅当两个操作数都为 False 时才返回 False,否则返回 True。它是一个二元运算符,意思是返回一些值,它必须在两个运算符之间进行操作(即需要两个运算符)
真值表:Operator A Operator B Logical OR Result True True True True False True False True True False False False
示例 1:
Python3
a = 10
b = -5
if a < 0 or b < 0:
print("Their product will be negative")
else:
print("Their product will be positive")
输出:
Their product will be negative
示例 2:
Python3
a = 10
if (a == 0 or "GeeksForGeeks"):
print("Is Awesome")
else:
("Try Again!")
输出:
Is Awesome
在这里,在OR逻辑运算符中,即使在使用 and运算符时评估的第一个表达式为假,也会评估进一步的表达式。此外,任何字符串总是被认为是一个真实的陈述。在上面的例子中,第一个语句是假的,但它也会评估第二个语句,因为它仅在两个操作数都是 False 并且字符串被认为是 True 语句时才返回 False,因此,它将被评估并且下面print 语句将被打印。
逻辑非
逻辑非运算符与单个布尔值一起使用,如果布尔值为 False,则将值返回为 True,反之亦然(与之相反)。它是一个一元运算运算符,这意味着要返回一些值,它必须只对一个运算符进行操作。 (即,只需要运算符)
真值表:Operator A Logical NOT Result True False False True
示例 1:
Python3
a = 10
if not a == 10:
print ("a not equals 10")
else:
print("a equals 10")
输出:
a equals 10
这里,a 等于 10,布尔值 a == 10 返回值 True。因此,布尔值not a == 10 将返回值为 False 并且由于不满足if条件,它将跳转到else语句。
示例 2:
Python3
a = 10
if not a%5 == 0:
print("a is not perfectly divisible by 5")
else:
print("a is perfectly divisible by 5")
输出:
a is perfectly divisible by 5