为了账号安全,请及时绑定邮箱和手机立即绑定

布尔值有“ and =”运算符吗?

布尔值有“ and =”运算符吗?

森林海 2021-03-13 11:10:55
有“ + =”运算符,即int。a = 5a += 1b = a == 6 # b is True是否有bool的“ and =“运算符?a = Truea and= 5 > 6 # a is Falsea and= 5 > 4 # a is still False我知道,此“ and =”运算符将对应于:a = Truea = a and 5 > 6 # a is Falsea = a and 5 > 4 # a is still False但是,我经常执行此操作,但我认为它看起来并不整洁。
查看完整描述

3 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

是的-您可以使用&=。


a = True

a &= False  # a is now False

a &= True   # a is still False

您可以类似地使用|=“ or =”。


应该注意的是(这在下面的评论中)这实际上是一个按位操作;仅当a以Boolean开头时,它才会具有预期的行为,并且仅使用Boolean进行操作。


查看完整回答
反对 回复 2021-03-31
?
慕的地6264312

TA贡献1817条经验 获得超6个赞

nrpeterson向您展示了如何&=与布尔值一起使用。


我仅显示如果将布尔值和整数混合使用会发生什么情况


a = True

a &= 0 # a is 0

if a == False : print "hello" # "hello"


a = True

a &= 1 # a is 1

if a == False : print "hello" # nothing


a = True

a &= 2 # a is 0 (again)

if a == False : print "hello" # "hello"


a = True

a &= 3 # a is 1

if a == False : print "hello" # nothing


查看完整回答
反对 回复 2021-03-31
  • 3 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号