if语句在单行上进行多次逻辑比较

时间:2013-05-07 16:51:15

标签: python

我想对python中的逻辑条件进行多次比较,但我不确定andor的正确方法。我有2个陈述。

声明1:

#if PAB is more than BAC and either PAB is less than PAC or PAC is more than BAC
if PAB > BAC and PAB< PAC or PAB > BAC and PAC>BAC: 

声明2:

#if PAB is more than BAC and PAC is less than PAB or if PAB is less than BAC and PAC is less than BAC
if PAB >BAC and  PAC<PAB or PAB<BAC and  PAC<BAC

正确地选择这两个人是正确的方法吗?

感谢。

1 个答案:

答案 0 :(得分:12)

查看陈述1,我假设你的意思是:

if (PAB > BAC and PAB< PAC) or (PAB > BAC and PAC>BAC): 

在这种情况下,我可能会这样写(使用链式比较,文档:python2python3):

if (BAC < PAB < PAC) or min(PAB,PAC)>BAC:

您可以在声明2中使用类似的表单。

话虽如此,我不能在问题的代码中对你的条件的解释与我对条件的解释相符,所以这似乎是合理的我不明白你的要求。