在python中到底是什么意思:False ==(False或True)为False?

时间:2019-11-14 06:36:17

标签: python boolean logic

Python布尔逻辑中的运算符优先级

print(False==True or False) #answer is True
print(False==(False or True))# is it True or False if either why?
print((False==False)or True) # answer is True`

4 个答案:

答案 0 :(得分:1)

它是#datasources.default: {} datasources: default: url: jdbc:mysql://localhost:3306/mydb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE username: root password: "" driverClassName: com.mysql.jdbc.Driver

False

您首先需要在括号中评估布尔值。在print(False==(False or True)) 的情况下,(False or True)由于True而对or进行评估,然后False==True显然对False进行评估。

答案 1 :(得分:1)

print(False==True or False) #answer is **False**
print(False==(False or True))# Answer is **False**
print((False==False)or True) # answer is **True`**

用于打印(False ==(False或True))

step1:  print(False==(False or True))
step 2: step 1 become print(False==True) **because (0+1=1)**
step 3: print(False)

答案 2 :(得分:0)

逐步评估表达式:

False == (False or True)

=

False == True

=

False

答案 3 :(得分:0)

or运算符的优先级低于相等运算符==的优先级。并且()在这三个文件中具有最高的优先级。

在这种情况下:

  1. print(False==True or False),最后计算表达式True or False的右侧,因为==的优先级高于or。第一个表达式False==True的计算结果为False

    现在表达式变为False or False,因此它的结果为False

  2. print(False==(False or True))表达式(False or True)的第二部分产生True,因为()具有最高优先级,而False==True是{{1} }。

  3. False由于print((False==False)or True)优先级,因此表达式(False==False)True,然后将()应用于结果表达式{{1 }}是or

相关问题