11.5 真值测试与if…else…三元表达式

1.真值测试

* 任何非零数字或者非空对象都为真

* 数字零、空对象以及特殊对象None都被人作为假

* 比较和相等测试会递归地应用在数据结构中

* 比较和相等测试会返回True或False

* 布尔and和or运算符会返回真或假的操作对象

x and y :如果x和y都为真,就是真

x or y:如果x或者y为真,就是真

not x:如果x为假,那就是真

>>> 2>3 and 2<0False>>> 2>3 or 2>0True>>> not 2>0False>>> 2>1 and 3>2True>>> 2>3 or 2<0False>>> not 2<0True>>> >>> [] or 33>>> [] or ()()>>> [] and ()[]>>> [] and 3[]>>> 3 and [][]>>> 上面是一些特殊例子:

由于空的列表、元组、字典都返回False,所以当计算完之后,返回操作对象

2.if…else…三元表达式

我们先举一个简单的例子,然后把他改成三元表达式

>>> a=0>>> if 2>1:a=1else :a=2>>> a1>>> >>> a=1 if 2>1 else 2>>> a1>>> 当2>1这个表达式为真的时候,,就执行a=1,不然a=2

表达式在列表的特殊使用,通过真值测试方法bool返回的0或1,来选择相应的值

>>> x=1>>> [1,2][bool(x)]2>>> >>> x=False>>> [1,2][bool(x)]1>>>

就说到这里,谢谢大家

——————————————————————

点击跳转零基础学python-目录

版权声明:本文为博主原创文章,未经博主允许不得转载。

幸福就是重复。每天跟自己喜欢的人一起,

11.5 真值测试与if…else…三元表达式

相关文章:

你感兴趣的文章:

标签云: