Python条件布尔值[重复]
Posted
技术标签:
【中文标题】Python条件布尔值[重复]【英文标题】:Python conditional boolean [duplicate] 【发布时间】:2020-08-14 03:50:56 【问题描述】:我试图了解 Python 中布尔值的可能性。
我不想使用 If 语句。
its_valid = True
但我想要这样的东西
its_valid = True if taking_stones == 2 or taking_stones == 1
是否有可能在 python 中,如果不是在什么语言中,只是出于好奇?
编辑:第二个问题
是否也可以使用范围? (从 1 到 2)
its_valid = True if taking_stones 1:2
【问题讨论】:
its_valid = taking_stones == 2 or taking_stones == 1
。布尔值的组合仍然是布尔值。
你也可以写its_valid = taking_stones in (1, 2)
或its_valid = taking_stones in range(1, 3)
。
该范围是否包含这些数字之间的浮点数以及 1.5 等如果我只想要整数,有没有办法指定范围?有没有办法设置步进? range(1,10, stepping 2) (只需要 2, 4,6,8,10) 谢谢!
我不认为这真的是 Python ternary operator 的副本,但无论如何。
第二个问题在***.com/questions/13628791/…得到解答
【参考方案1】:
等式比较返回布尔值,因此无需显式编写True if something true
。你可以简单地写:
its_valid = (taking_stones == 2 or taking_stones == 1)
或者,如果您想更简洁地检查多个值:
its_valid = (taking_stones in (1,2))
【讨论】:
非常感谢!就是这样!像这样链接布尔值是一种好习惯,还是最好提前将布尔值设置为 True 或 False? 如果您提前设置布尔值,当您检查您真正关心的值时,它将被覆盖。如果你只想问 a 或 b 是否为真,则无需添加不必要的步骤。以上是关于Python条件布尔值[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Python:将字符串列表转换为布尔值,其中布尔值以字符串形式存在[重复]
我的咖啡脚本中的条件语句在应该返回一个数字时返回一个布尔值[重复]