当前位置: 移动技术网 > IT编程>脚本编程>Python > Python中使用Boolean操作符做真值测试实例

Python中使用Boolean操作符做真值测试实例

2019年03月23日  | 移动技术网IT编程  | 我要评论

四季健康,山东冠县在家加工活,姐是老中医原唱

在python中,任何类型的对象都可以做真值测试,并且保证返回true或者false。

以下几种值(不论类型)在真值测试中返回false:

1.none
2.false
3.任何类型的数字0,包括0,0.0,0l,0j
4.空的序列(sequence)或者映射(mapping)类型对象
5.对于用户自定义类型的对象,如果其类定义了__nonzero__() 或者 __len__()特殊方法并且返回false或者0

对于最后一条规则,有几点需要说明:

1.如果类没有定义这两个方法中的任何一个,则这种类型的对象真值测试时总是为true
2.如果类同时定义了__nonzero__() 和 __len__(),只会参考__nonzero__()的返回值

boolean操作符的特性(直接copy文档而来):

复制代码 代码如下:

x or y: if x is false, then y, else x
x and y: if x is false, then x, else y
not x: if x is false, then true, else false

1.注意and和or操作符的短路特性
2.not运算符要么返回true要么返回false
3.and和or运算符的返回值不限于true和false,它只是对x或者y做真值测试,然后返回其中一个的值(注意不是其真值)

代码示例:

复制代码 代码如下:

s = ''
s = s or 'default value'
print s

运行结果是:

复制代码 代码如下:

default value

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网