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



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

实际上False or False是False(不是您建议的True(

你可以通过这个简单的例子看到这一点:

>>> 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=假

打印(any_lowercase4('TT'((本质上说请检查是否有字符更低,事实并非如此。因此,要么检查Tt,它输出True。在Python中,islow((是一个用于字符串处理的内置方法。如果字符串中的所有字符都是小写的,则islow((方法返回"True",否则返回"False"。

b='Tt' 
c='tt' 
print (b. islower())
print (c. islower())
for i in b:
print (b. islower())

输出错误正确错误错误

最新更新