Python“和”和“或”if语句

时间:2014-05-21 03:53:19

标签: python if-statement python-3.x

在Python中,我可以对此进行编码并使其按预期工作吗?

if a != None and b == None or a == None and b != None

基本上我想看看a或b是否为None而另一个不是

2 个答案:

答案 0 :(得分:8)

因为听起来你想要一个xor ......

if (a is None) != (b is None):
    ...

答案 1 :(得分:1)

在Python中,只能存在NoneType的{​​{1}}个实例,因此您可以使用is运算符,就像这样

if (a is None and b is not None) or (b is None and a is not None):

您还可以计算此类None的数量

if (a, b).count(None) == 1:

或者您可以像这样明确地检查

if a != b and (a is None or b is None):