如果 a 或 b 为空,我想打印一条消息。
这是我的尝试
a = ""
b = "string"
if (a or b) == "":
print "Either a or b is empty"
但只有当两个变量都包含空字符串时才会打印消息。
仅当 a 或 b 为空字符串时,如何执行打印语句?
更明确的解决方案是:
if a == '' or b == '':
print('Either a or b is empty')
在这种情况下,您还可以检查元组中的包含:
if '' in (a, b):
print('Either a or b is empty')
if not (a and b):
print "Either a or b is empty"
你可以这样做:
if ((not a) or (not b)):
print ("either a or b is empty")
因为bool('')
是假的。
当然,这相当于:
if not (a and b):
print ("either a or b is empty")
请注意,如果要检查两者是否为空,可以使用运算符链接:
if a == b == '':
print ("both a and b are empty")
if a == "" and b == "":
print "a and b are empty"
if a == "" or b == "":
print "a or b is empty"
或者您可以使用:
if not any([a, b]):
print "a and/or b is empty"