我正在尝试检查代码中的一行输出,以查看其中是否包含“活动:已退出”或“活动:未活动”。
我尝试使用:
if "Active: Exited" or "Active; Inactive" in output:
但这只会触发输出中的内容。
如果我只是说:
if "Active: Exited" in output:
可以正常工作。
答案 0 :(得分:2)
Python的in
测试不会分发。
你想说的是
if ("Active: Exited" or "Active; Inactive") in output:
但是Python将此解释为
if ("Active: Exited") or ("Active; Inactive" in output):
在这种情况下,字符串"Active: Excited"
是所谓的'truthy',因此您的or
总是求值为True
。
您想要的是什么
if "Active: Exited" in output or "Active; Inactive" in output:
# AKA
# if ("Active: Exited" in output) or ("Active; Inactive" in output):