if config == 'H/2' or 'H' or '2H': pass
if config == 'H/2' or config == 'H' or config == '2H': pass
1
A
回答
8
>>> config = 'H/2'
>>> config == 'H/2' or 'H' or '2H'
True
>>> config == 'H/2' or config == 'H' or config == '2H'
True
>>> config = 'H'
>>> config == 'H/2' or 'H' or '2H'
'H'
>>> config == 'H/2' or config == 'H' or config == '2H'
True
>>> config = 'R'
>>> config == 'H/2' or 'H' or '2H'
'H'
>>> config == 'H/2' or config == 'H' or config == '2H'
False
2
好吧,既然pass
什么也不做,想必config.__eq__
有没有副作用,我想他们是等效的(在什么也没有发生)。
但是,如果将pass
替换为别的东西,则会注意到第一个条件总是执行,第二个条件依赖于config
的值。
也许你还想写
if config in ['H/2', 'H', '2H']:
# do stuff
pass
1
执行下列任:
if config in ('H/2', 'H', '2H'): # more efficient than a list
do_something()
或者(如果你这样做的时候还是可能的设定值要大的多):
# once
config_h_set = set(('H/2', 'H', '2H'))
# later
if config in config_h_set:
do_something()
相关问题
- 1. 这些Python表达式是否相互等价?
- 2. 这些JS条件语句在功能上是否相同?
- 3. 这两个代码是否相等?
- 4. 这些SQL语句是否相同?
- 5. 这是if语句是否相等?
- 6. 这些在javascript中定义函数的方式是否相等?
- 7. 这些功能是否等同?
- 8. 这两个uml箭头是否相等?
- 9. 这两个表达式是否相等
- 10. 这些JQuery调用是否相同?
- 11. 这些指针结构是否相同?
- 12. 这些SQL语句是否相同?
- 13. Git - 这些过程是否相同?
- 14. 这些查询是否相同?
- 15. 这些jQuery表达式是否相同?
- 16. PHP:这些语句是否相同? (file_exists())
- 17. 这些对象是否相同?
- 18. 这些数字为什么不相等?
- 19. 从/ usr/bin中删除这些python文件是否安全?
- 20. 确定树是否“相等”
- 21. 检查ForeignKeys是否相等
- 22. Mathf.Ceil和Mathf.CeilToInt是否相等?
- 23. 这两个select sql语句是否相等? “join ... on”与“where”
- 24. 所有这些SQL连接在逻辑上是否相同?
- 25. 什么是这些Haskell高阶函数的Python等价物?
- 26. 这些上下文无关语法是否等价?
- 27. 3NF的定义是否相等?
- 28. 确定两个复数是否相等
- 29. python否则如果和相等测试
- 30. 有一个Python新闻网站这是RubyFlow的接近相等?
号为什么问?你尝试过吗? – 2011-02-09 23:54:16
我试过了,它们看起来相当。它让我感到惊讶。也许我的测试不够彻底。 – thenickname 2011-02-09 23:55:08