【 关于布尔值与布尔运算】

关于布尔值与布尔运算


前言

布尔值就两个值,一个True,一个False。但它属于整数类型的子类,所以运算也很丰富哦~


一、数值运算:加减乘除

布尔值(bool),是python内置数据类型的一种,属于整型(int)的子类,True和False都是有对应的数值,True=1,False=0。所以,其是可以做数值运算的,也就是加减乘除等。
例如:

print(True+1) #结果为2
print(True-1) #结果为0
print(True*3) #结果为3
print(True/2) #结果为0.5
print(False+1) #结果为1
print(False-1) #结果为-1
print(False*3) #结果为0
print(False/3) #结果为0.0

注意:True和False都是首字母大写,而且因为是整型的子类,因此不需要加引号变成字符串。

二、布尔运算: and ,or , not

其中 and 和 or 是二元布尔操作符。这两个操作符接受两个值或者表达式。优先级的关系为:not > and > or。例如:
在这里插入图片描述

三、布尔值与其他数据类型的运算

在python中,所有的对象都有布尔值(python中,一切皆对象,自然也包括表达式),默认为True,当其值为None或者为空时,其布尔值为False。python有个内置函数bool()可以用于查看其他对象的布尔值。例如:

#整型
print(bool(0)) #False
print(bool(1)) #True
print(bool(2)) #True
print(bool(3)) #True
print('='*10)
#字符串
b = 'sdsdf'
c = ''
print(bool(b)) #True
print(bool(c))  #False
print('='*10)
#容器(列表,字典,集合)
list1 = []
list2 = [1,2]
dic1 = {}
dic2 = {'name':'Pyboy'}
set1=set(list1)
set2 = set(list2)
print(bool(list1)) #True
print(bool(dic1)) #False
print(bool(dic2)) #True
print(bool(set1)) #False
print(bool(set2)) #True

四、布尔运算的短路运算

如果一个布尔运算的表达式能提前确定结果,则后续的计算不再执行,直接返回结果,这叫做布尔运算的短路运算。
比如:

1 print(3 or False) #3
2 print(True or 3) #True
3 print(3 or 0) #3
4 print(3 and False) #False
5 print(3 and 0) # 0
6 print( False and 3) #False
7 print( 3 and not 5) #False

在上面的例子中,整型3 的布尔值为True,
第1-3行:因为在 or 运算中,一方为真即为真;双方为假才是假。所以另一边是什么已经不重要了,所以返回的是 3 ;而True在左边时,决定结果的自然是左边的,所以返回True。
第4-6行:在 and 运算中 ,一方为假即为假;双方为真才是真。 0显然是假,所以返回0。
第7行: 3 和 5 都是真,而not表示取反,那么not5 就等价False,所以返回False。

把3 换成字符串、列表等等,结果一样。谁能直接决定结果,就返回谁。

五、逻辑运算符

1 print(1 == True)  # True
2 print(True == 1) # True
3 print(True == '1') # False
4 print('1' == True) # False

这里布尔值是整型的子类,且True的值是1,因此,1-2行print的结果当然都是True。
3-4行给1加了引号,变成了字符串,字符串不能和整型相等,所以结果是False。

总结

`
布尔值是整型的子类,而整型是数值的子类(数值包括 整型 浮点型 复数)所以布尔值只能和数值做算术运算和逻辑运算。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 布尔运算是计算机科学中的一种逻辑运算,用于处理逻辑值(真或假)的运算。而virtuoso布尔运算则是指在计算机科学中使用专业级的技能和知识进行布尔运算。virtuoso一词源于意大利语,指的是有着非凡技能和才能的艺术家或表演者。 在布尔运算中,常见的运算符包括与(AND)、或(OR)、非(NOT)以及异或(XOR)等。通过使用这些运算符,可以通过逻辑判断来实现条件的筛选、逻辑的判断和数据的处理。而virtuoso布尔运算则是指在处理布尔运算时,能够灵活运用这些运算符,根据实际需求快速而准确地进行逻辑处理。 通过掌握virtuoso布尔运算,人们可以对复杂的逻辑关系进行深入分析和解决,例如在计算机程序中的条件语句、循环和判断等。通过准确和熟练地运用布尔运算符号,能够避免逻辑错误,提高程序的效率和正确性。 而要成为一位virtuoso布尔运算的专家,需要具备良好的逻辑思维能力、数学基础和编程经验。此外,还需要对布尔代数、逻辑推理和计算机原理等有深入的了解和研究。掌握这些知识和技能可以使得使用布尔运算符的人更加高效和准确地处理逻辑问题,提高编程和计算能力。 总之,virtuoso布尔运算可以让我们更好地应用布尔逻辑进行问题的分析和求解。掌握这项技能将极大地提高我们在计算机科学领域的专业水平和工作能力。 ### 回答2: 布尔运算是计算机科学中一种基本的逻辑运算方式,以布尔代数为基础,常用于判断条件、逻辑推理和组合逻辑电路设计等方面。而virtuoso则是一个音乐术语,常用来形容音乐家或演奏者的技艺非凡、精湛的表演。 因此,virtuoso布尔运算可以理解为使用非常娴熟、掌握得非常好的方式来进行布尔运算。这意味着运算的效率与准确性更高,能够更快速、准确地处理逻辑问题。 对于一个高水平的计算机科学家或程序员而言,他们在处理逻辑问题和编写代码时往往能够快速、准确地运用布尔运算,并且能够灵活地组合运算,以解决各种复杂的问题。他们对布尔运算的理解和掌握就像一个音乐家在演奏音乐时展现的精湛技艺一样。 在现代计算机科学的领域中,virtuoso布尔运算的应用广泛,比如在算法设计、数据处理、人工智能等方面。通过灵活应用布尔运算,可以提高计算机程序的性能和效率,并得到准确的逻辑分析结果。而virtuoso布尔运算的高水平运用则能够使得计算机科学家在处理复杂的问题时能够更加得心应手,能够快速、准确地找到解决方案。 总之,virtuoso布尔运算指的是高水平、娴熟的布尔运算应用,可以极大地提高计算机程序的性能和效率,并且在解决复杂的逻辑问题上表现出色。 ### 回答3: 布尔运算是一种基于真假逻辑的运算方式,它用来表示真假或者逻辑值的计算过程。virtuoso布尔运算是指在布尔运算中具备非常高超技能的人或者计算机系统。 virtuoso布尔运算在计算机科学领域非常重要,特别是在逻辑电路设计和编程中。virtuoso布尔运算包括逻辑与、逻辑或、逻辑非等运算,可以用来构建复杂的逻辑电路和实现各种计算任务。 virtuoso布尔运算的一个典型应用是逻辑门电路的设计。逻辑门可以实现布尔运算的各种操作,包括与门、或门、非门等。virtuoso布尔运算的专家可以利用逻辑门设计出高效的电路,以实现各种功能和算法。 此外,在编程中,virtuoso布尔运算可以用来控制程序的流程和逻辑判断。通过布尔运算,程序可以根据特定条件的真假进行不同的操作和决策。具备virtuoso布尔运算能力的程序员可以高效地构建复杂的控制结构和逻辑判断。 综上所述,virtuoso布尔运算是在布尔运算中具备高超技能的人或系统,它在逻辑电路设计和编程中扮演着重要的角色。通过virtuoso布尔运算,可以实现复杂的逻辑功能和控制流程,提高计算机的效率和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值