在 Python 的 if 语句中使用布尔值

在 Python 的 if 语句中使用布尔值

Using booleans in an if statement in Python

使用is运算符检查 if 语句中的布尔值,例如
if variable is True:. 如果满足条件is操作员将返回,否则。TrueFalse

主程序
variable = True # ✅ check if variable has a boolean value of True if variable is True: # 👇️ this runs print('The boolean is True') # ------------------------------------------ # ✅ check if variable is truthy if variable: # 👇️ this runs print('The variable stores a truthy value')

第一个示例检查变量是否存储True布尔值。

is当您需要检查变量是否存储布尔值或时,您应该使用运算符None

当您需要检查一个值是否等于另一个值时,请使用相等运算符(等于==和不等于),例如 !='abc' == 'abc'

简而言之,使用is带有内置常量的运算符,例如True,False
None

在语句中检查False或检查虚假值
时,您可以使用相同的方法。
if

主程序
variable = False if variable is False: # 👇️ this runs print('The boolean is False') if not variable: # 👇️ this runs print('The variable stores a falsy value')
请注意,检查布尔值True与检查真值或假值非常不同。 False

下面是我们如何检查if语句中的真值。

主程序
variable = True if variable: # 👇️ this runs print('The variable stores a truthy value')

Python 中的虚假值是:

  • 定义为 falsy 的常量:NoneFalse.
  • 0任何数字类型的(零)
  • 空序列和集合:(""空字符串),()(空元组),[]
    (空列表),
    {}(空字典),set()(空集),range(0)(空范围)。
所有其他值都是真实的,因此if如果任何其他值存储在变量中,该块就会运行。

这里有些例子。

主程序
if 'hello': print('this runs ✅') if ['a', 'b']: print('This runs ✅') if '': print('this does NOT run ⛔️') if 0: print('this does NOT run ⛔️')

if not X返回 的否定if X因此,对于if not X,我们检查是否X
存储了一个虚假值。

您通常必须在单个if语句中使用多个条件。

您可以使用布尔运算符and或布尔or运算符来做到这一点。

主程序
if True and True: print('This runs ✅') if True and False: print('This does NOT run ⛔️') # -------------------------------------- if True or False: print('This runs ✅') if False or False: print('This does NOT run ⛔️')

前两个示例使用布尔and运算符,后两个示例使用布尔or运算符。

使用布尔and运算符时,左侧和右侧的表达式必须为真值才能使if块运行。

换句话说,两个条件都必须满足if才能运行块。

主程序
if True and True: print('This runs ✅') if True and False: print('This does NOT run ⛔️')

使用布尔or运算符时,必须满足任一条件if才能运行块。

主程序
if True or False: print('This runs ✅') if False or False: print('This does NOT run ⛔️')

如果左侧或右侧的表达式的计算结果为真值,则该if块运行。