开发者社区 问答 正文

比较真假语句时不理解布尔输出

对于下面的代码,我不明白这是如何工作的。我正在尝试在线学习基础知识,无论我不能打破以下几点。但是如果标志值最初是false,那么本质上第四行就是说false = false或false...。

def any_lowercase4(s):

    flag = False
    for c in s:
        flag = flag or c.islower()
    return flag

print(any_lowercase4('TT'))

然后它将输出False

问题来源:stackoverflow

展开
收起
is大龙 2020-03-24 19:11:08 424 分享 版权
1 条回答
写回答
取消 提交回答
  • 实际上False或False是False(您建议的不是True)

    您可以通过以下简单示例看到它:

    >>> x = False
    >>> y = False
    >>> print (x or y)
    False
    >>> z = True
    >>> print (x or z)
    True
    >>> 
    

    的完整真值表为:

    F or F = F
    T or F = T
    F or T = T
    T or T = T
    

    其中T =真,F =假

    回答来源:stackoverflow

    2020-03-24 19:11:17
    赞同 展开评论
问答地址: