返回信息流表达式
``` python
print 1 < (2 == 2)
print 1 < 2 == 2
```
第一个结果: False
第二个结果: True
第一个分析: 2 == 2 为True, 1 < True 为False
第二个分析: 1 < 2 为True, True == 2 为False?
这是一条镜像帖。来源:北邮人论坛 / python / #22106同步于 2018/6/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖
python的两个简单表达式
jh1
2018/6/8镜像同步12 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
查到了
https://docs.python.org/2.3/ref/comparisons.html
Comparisons can be chained arbitrarily, e.g., x < y <= z is equivalent to x < y and y <= z, except that y is evaluated only once (but in both cases z is not evaluated at all when x < y is found to be false).
所以 1 < 2 == 2是 (1<2)and(2==2)的意思。
这大概涉及到一个大部分语言都没有的Python语法糖
在Python中3>2>1这样的不等式会保持原本的数学意义,也就是不会像C/C++中被解释成(3>2)>1,即true>1,false
谢谢,明白了
【 在 byrssss ( 匿名用户) 的大作中提到: 】
: 查到了
: https://docs.python.org/2.3/ref/comparisons.html
: Comparisons can be chained arbitrarily, e.g., x < y <= z is equivalent to x < y ...
: ...................
阿狸嘎达
【 在 specops (Perfec) 的大作中提到: 】
: 这大概涉及到一个大部分语言都没有的Python语法糖
: 在Python中3>2>1这样的不等式会保持原本的数学意义,也就是不会像C/C++中被解释成(3>2)>1,即true>1,false