在python中,任何对象都可以判断其真假值:True,False
在if或while条件判断中,下面的情况值为False:
1.None
2.Flase
3.数值为0的情况,如:0,0.0,0j
4.所有空序列,如:'',(),[]
5.所有空mapping,如:{}
6.instances of user-defined classes, if the class defines a __bool__() or __len__() method,
when that method returns the integer zero or bool value False.
All other values are considered true — so objects of many types are always true.
在运算操作和内建函数返回Boolean结果0或者Flase表示false
1或True表示true
python中的Boolean运算如下:
print('x or y -> if x is false,then y, else x ') x, y= 2,0 print('{} or {} = {}'.format(x, y, xor y)) x1, y1= 0,10 print('{} or {} = {}'.format(x1, y1, x1or y1)) x2, y2= 0,0 print('{} or {} = {}'.format(x2, y2, x2or y2)) print('#' * 50) print('x and y -> if x is false,then x, else y ') print('{} and {} = {}'.format(x, y, xand y)) x1, y1= 0,10 print('{} and {} = {}'.format(x1, y1, x1and y1)) x2, y2= 0,0 print('{} and {} = {}'.format(x2, y2, x2and y2)) print('#' * 50) print('not x -> if x is false,then True,else False ') x= 2 print('not {} = {}'.format(x,not x)) x= 0 print('not {} = {}'.format(x,not x))
运行结果:
>>> x or y -> if x is false,then y, else x or 0 = 2 or 10 = 10 or 0 = 0 ################################################## x and y -> if x is false,then x, else y and 0 = 0 and 10 = 0 and 0 = 0 ################################################## not x -> if x is false,then True,else False not 2 = False not 0 = True >>>