比较true和false语句时不理解布尔输出

2024-09-30 22:16:07 发布

您现在位置:Python中文网/ 问答频道 /正文

对于下面的代码,我不理解这是如何工作的。我正在努力在线学习基础知识,无论发生什么,我都无法突破以下障碍。但是如果标志值最初为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


Tags: or代码infalseforreturn标志def
2条回答

打印(任意小写字母4('TT')) 本质上说,请检查是否有更低的字符, 但事实并非如此。 所以,要么检查Tt,它输出True。 在Python中,islower()是用于字符串处理的内置方法。 如果字符串中的所有字符都是小写的,则islower()方法返回“True”,否则返回“False”

b='Tt' 
c='tt' 
print (b. islower())
print (c. islower())

for i in b:
    print (b. islower())

输出 错误的 符合事实的 错误的 假的

实际上False or False是假的(不像你建议的那样是真的)

您可以通过以下简单示例看到这一点:

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

or的完整真值表为:

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

其中T=真,F=假

相关问题 更多 >