python3之数字(在实际应用中的数字--比较:一般的和连续的)

来源:互联网 发布:常微分方程 知乎 编辑:程序博客网 时间:2024/04/30 04:11

python3之数字(在实际应用中的数字--比较:一般的和连续的)

-------------

一般的比较就像我们所期待的那样,它们比较操作数的相对大小,并且返回一个布尔类型的结果,如例:

>>>1<2True>>>2.0>=1True>>>2.0==2.0True>>>2.0!=2.0False
再次注意:数字表达式中是如何允许混合类型的(2.0>=1,这里整数向浮点数进行了转换)


有趣的是,python还允许我们把多个比较连续起来执行范围测试。连续的比较是更大的布尔表达式的缩写。简而言之,python允许我们把大小比较测试连接起来,成为诸如范围测试的连续比较。例如,表达式(A<B<C)测试B是否在A和C之间;它等同于布尔测试(A<B and B<C),如例:

>>>X=2>>>Y=4>>>Z=6
如下的两个表达式具有相同的效果,但是,第一个表达式简单而便于录入,并且,由于python只需要计算Y一次,它运行起来可能略快一点

>>>X<Y<ZTrue>>>X<Y and Y<ZTrue
获得False结果也是一样的,并且允许任意的连续长度
>>>X<Y>ZFalse>>>X<Y and Y>ZFalse>>>1<2<3.0<4True>>>1>2>3.0>4False
我们可以在连续测试中使用其他的比较,但是,最终的表达式可能变得很晦涩,除非你按照python的方式来计算它们。如例:
>>>1==2<3     #等同于:1==2 and 2<3False
python并不会把1==2的False的结果和3进行比较,这样做的话,在技术上的含义和0<3相同,将会得到True(我们将在后面了解到,True与False只不过定制为1和0)。