比较真假语句时不理解布尔输出
not understanding boolean output when comparing true and false statements
对于下面的代码,我不明白它是如何工作的。我正在尝试在线学习基础知识,无论如何我都无法打破以下内容。但是如果标志值最初是 false,那么第四行基本上是说 false = false or false....这是 TRUE
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
是假的(不是你建议的真)
你可以通过这个简单的例子看到这一点:
>>> x = False
>>> y = False
>>> print (x or y)
False
>>> z = True
>>> print (x or z)
True
>>>
or
的完整真相 table 是:
F or F = F
T or F = T
F or T = T
T or T = T
其中 T = True 和 F = False
打印(any_lowercase4('TT'))
本质上说请检查是否有任何字符较低,
这不是。
因此,要么检查输出 True 的 Tt。
在 Python 中,islower() 是用于字符串处理的内置方法。
islower() 方法 returns 如果字符串中的所有字符都是小写,则为“True”,否则,它 returns “False”。
b='Tt'
c='tt'
print (b. islower())
print (c. islower())
for i in b:
print (b. islower())
输出
错误的
真的
错误的
假
对于下面的代码,我不明白它是如何工作的。我正在尝试在线学习基础知识,无论如何我都无法打破以下内容。但是如果标志值最初是 false,那么第四行基本上是说 false = false or false....这是 TRUE
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
是假的(不是你建议的真)
你可以通过这个简单的例子看到这一点:
>>> x = False
>>> y = False
>>> print (x or y)
False
>>> z = True
>>> print (x or z)
True
>>>
or
的完整真相 table 是:
F or F = F
T or F = T
F or T = T
T or T = T
其中 T = True 和 F = False
打印(any_lowercase4('TT')) 本质上说请检查是否有任何字符较低, 这不是。 因此,要么检查输出 True 的 Tt。 在 Python 中,islower() 是用于字符串处理的内置方法。 islower() 方法 returns 如果字符串中的所有字符都是小写,则为“True”,否则,它 returns “False”。
b='Tt'
c='tt'
print (b. islower())
print (c. islower())
for i in b:
print (b. islower())
输出 错误的 真的 错误的 假