wow = ["wowza this is a really long string wows"]
if "long" or "is" in wow:
print("yes")
输出是yes
但是如果我把
^{pr2}$输出是nothing
同:
wow = ["wowza this is a really long string wows"]
if "is" in wow:
print("yes")
为什么?在
我以为or
应该是其中之一?
但是如果单独输入的两个值都为false,但是使用or
它就变成真的了?在
{cd5>写错了
应该这样写吗?在
if "long" in wow or "is" in wow:
相当于
^{pr2}$你想要的是:
^{3}$第一个测试是成功的,因为},而字符串{}是truthy*。以下测试失败,因为
"long" or "is" in wow
返回{wow
是一个包含1个字符串的列表,in
运算符在这里测试列表包含,而不是字符串包含。在*此处不测试
or "is" in wow
部分,因为if短路。但与你的问题无关好吧,我们这里有几个不同的问题。在
这意味着:
^{pr2}$所以是的,你需要把它改成:
^{3}$但这仍然不能满足您的需要,因为
wow
是一个列表。您正在询问"long"
是否是该列表中的一个元素。但是"long"
不是列表中的元素。列表的唯一元素是字符串"wowza this is a really long string wows"
,它与"long"
不同。您需要检查字符串本身,而不是列表。在将条件发送到交互式提示符(如果有,请运行python或ipython)以查看它返回的结果如何?在
您可能需要测试字符串,而不是单个项目列表:
^{pr2}$相关问题 更多 >
编程相关推荐