use*_*169 4 python python-2.x logical-operators
这是我在摆弄python解释器时得到的
[mohamed@localhost ~]$ python
Python 2.7.5 (default, Apr 10 2015, 08:09:14)
[GCC 4.8.3 20140911 (Red Hat 4.8.3-7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 'a' in 'abc'
True
>>> 'a' in 'abc' == True
False
>>> 'a' in 'abc' == False
False
>>> ('a' in 'abc') == True
True
>>> ('a' in 'abc') == False
False
>>> ('a' in 'abc' == True) or ('a' in 'abc' == False)
False
>>> (('a' in 'abc') == True) or (('a' in 'abc') == False)
True
Run Code Online (Sandbox Code Playgroud)
我的问题是为什么使用括号为我提供了预期的,更符合逻辑的声音输出?
由于操作员链接,in并且==表现不好.
'a' in 'abc' == True
Run Code Online (Sandbox Code Playgroud)
转变为 -
'a' in 'abc' and 'abc' == True
Run Code Online (Sandbox Code Playgroud)
文件参考-
比较可以任意链接,例如,x <y <= z等于x <y和y <= z,除了y仅被评估一次(但在两种情况下,当x <y被发现时,根本不评估z是假的).
类似的事情发生在in和==.
| 归档时间: |
|
| 查看次数: |
174 次 |
| 最近记录: |