评估多个OR条件

时间:2014-10-20 11:07:51

标签: julia

由于短路规则,我不能写出这样的内容:

message = "nada"

if message != "success" || message != "login successful"
    error("get_response() failed with message returned of: $message")
end

相反,我必须写下这样的东西才能让它发挥作用:

message = "nada"

if message != "success" ? message != "login successful" : false
    error("get_response() failed with message returned of: $message")
end

第二种方式似乎......"笨拙",所以我觉得我在阅读julia手册时错过了一些东西。有没有标准的方法来编写多个OR条件? (或者写出比我的更多OR条件的更好方法)。

假设message可以是任何字符串,我只想做一些事情,如果它不是"success""login successful"

1 个答案:

答案 0 :(得分:4)

这似乎是使用或/和否定的错误。我猜你想要的是

message = "nada"

if !(message == "success" || message == "login successful")
    error("get_response() failed with message returned of: $message")
end

或等效

message = "nada"

if message != "success" && message != "login successful"
    error("get_response() failed with message returned of: $message")
end

这对我有用。原始条件

message != "success" || message != "login successful"

始终为true,因为任何message必须至少与"success""login successful"中的一个字符串不相等。