if x or y is 'whatever':
我在解释器中测试了这个并且得到了不一致的结果.看起来这条线会产生更一致和预期的结果
if (x or y) is 'whatever':
或者最好是明确地将所有内容都这样布局
if x is 'whatever' or y is 'whatever':
最后一个总是有效,但我只是想让我的代码更简洁,同时仍然遵循最佳实践.我尝试进行搜索,以便不要问多余的问题,但是搜索“是”或“和”并且“相当困难”.在此先感谢您的任何帮助.
编辑:感谢大家的快速回复.当我需要’或’时,这对我来说非常有效
if 'whatever' in [x,y]:
但是,如果我需要’和’,我将如何缩小它?
if x == 'whatever' and y == 'whatever':解决方法 或者不像英语那样工作.
如果x是真值,则x或y返回x,否则返回y.字符串是真的,如果它们不是空的.
更糟糕的是,“是”具有更高的优先级“或”,因此您的表达式与x相同或(y是“任何”).因此,如果x不为空,则返回x(这将为true,因此if将执行).如果x为空,它将评估y是’what’.
BTW:不要使用“is”来比较值相等,使用==.
你想要这个(parens可选):
if (x == 'whatever') or (y == 'whatever'):
或更简洁,但更陌生:
if 'whatever' in [x,y]:总结
以上是内存溢出为你收集整理的python – 冷凝比较全部内容,希望文章能够帮你解决python – 冷凝比较所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)