如何检查布尔值是真还是假?
Posted
技术标签:
【中文标题】如何检查布尔值是真还是假?【英文标题】:How do I check if a boolean is true or false? 【发布时间】:2020-12-31 17:23:55 【问题描述】:我有一个名为 programRepeated 的布尔值,我需要使用 if / else 语句检查它是真还是假。有没有办法做到这一点?
if programRepeated = True:
print("Your balance is : $" , final_balance + cash_insert)
print("")
elif programRepeated = False:
print("Your balance is : $" , final_balance + cash_insert - 5)
print("")
【问题讨论】:
= 是赋值。请参阅教程,该教程还应涵盖 ==(比较)。另外,可以只使用if x:
,当 x 是真假时。
布尔值不需要比较。这就是布尔值的意义所在。只需使用if programRepeated:
除了True
或False
之外,其他值是否应该被视为真值、假值或两者都不是?我会注意到这是真的基本的Python;我强烈建议通过a tutorial on the language as a whole 运行,因为通过 Stack Overflow 问题零碎学习基础知识是不切实际的。
这能回答你的问题吗? How do I use a Boolean in Python?
注意,对象默认被认为是 True,除非它们满足 False 的条件:***.com/questions/63876672/…
【参考方案1】:
布尔值可以直接进入条件 (if) 语句
if programRepeated:
如果programRepeated
等于true,则代码块将执行。
关于您的代码的一些注释:=
是一个赋值运算符。如果您想检查是否相等,请使用两个等号==
。如果您尝试在条件中使用=
,您的代码将引发语法错误。
另外,您的elif
应该与if
语句在同一个缩进上,在这种情况下您可以使用else
。
if programRepeated:
print("Your balance is : $" , final_balance + cash_insert)
print("")
else:
print("Your balance is : $" , final_balance + cash_insert - 5)
print("")
【讨论】:
=
不会让它总是正确的,这不是 C,并且在条件中使用 =
不是合法代码;它会在解析过程中以SyntaxError
死掉。
当心,“一个对象被认为是真实的,除非它的类定义了一个返回 False 的 __bool__() 方法或一个返回零的 __len__() 方法,当使用该对象调用时”。 is_launch_nuke = "不要发射!!!" launch_nuke() if is_launch_nuke 否则 print("Phew")。结果导致核弹发射。【参考方案2】:
好吧,你不需要显式添加= True
,你可以这样做:
if programRepeated:
print("Your balance is : $" , final_balance + cash_insert)
print("")
else:
print("Your balance is : $" , final_balance + cash_insert - 5)
print("")
【讨论】:
以上是关于如何检查布尔值是真还是假?的主要内容,如果未能解决你的问题,请参考以下文章