为什么`True is False == False`,在Python中是False? - python

使用括号时,这些语句为什么能按预期工作:

>>> (True is False) == False
True

>>> True is (False == False)
True

但是在没有括号的情况下会返回False吗?

>>> True is False == False
False

参考方案

基于python documentation关于运算符优先级:

请注意,比较,成员资格测试和身份测试均具有相同的优先级,并且具有“比较”部分中所述的从左到右的功能。

因此,实际上您有一个链接语句,如下所示:

>>> (True is False) and (False==False)
False

您可以假定中心对象将在2个操作和其他对象之间共享(在这种情况下为False)。

并注意,对于所有比较,包括隶属度测试和身份测试操作(其后为操作数),它也适用:

in, not in, is, is not, <, <=, >, >=, !=, ==

范例:

>>> 1 in [1,2] == True
False

Python:如何迭代20列并找到顶部的列? - python

我是新来的,也许我的问题很愚蠢,所以我提前致歉。基本上我有这样的数据,ID | Scope 1 | Scope 2 | Scope 3 | Scope 4 | ... | Scope 30| 1 | True | True | True | False | ... | True | 2 | True | True | True | False | ... |…

如何获得布尔numpy数组和另一个的相对补码? - python

假设我有两个numpy数组:>>> v1 array([ True, False, False, False, True]) >>> v2 array([False, False, True, True, True]) 我正在尝试检索具有相同长度(5)并在每个位置True包含v1==True AND v2==False的数…

如果一个或两个文件不存在,如何处理该异常? - python

我正在尝试检查是否存在一个或两个文件,如下所示:def check_files_if_exist(): try: f1 = open(file1) f1.close() f2 = open(file2) f2.close() except: #how to pass exception if one or two files does not exist? …

如何将圆盘形蒙版应用于NumPy阵列? - python

我有一个像这样的数组:>>> np.ones((8,8)) array([[ 1., 1., 1., 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1., 1., 1.,…

在Python函数中使用True,False和None作为返回值 - python

我认为我完全理解这一点,但我只是想确定一下,因为我一直看到人们说永远不要对True,False或None进行测试。他们建议例程应引发错误,而不是返回False或None。无论如何,在很多情况下,我只是想知道是否设置了标志,所以我的函数返回True或False。在其他情况下,如果没有有用的结果,我的函数将返回None。从我的想法来看,只要我意识到我永远都不要使…