python中的Boolean运算和真假值

在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, x or y))
x1, y1 = 0, 10
print('{} or {} = {}'.format(x1, y1, x1 or y1))
x2, y2 = 0, 0
print('{} or {} = {}'.format(x2, y2, x2 or y2))
 
print('#' * 50)
print('x and y -> if x is false,then x, else y ')
print('{} and {} = {}'.format(x, y, x and y))
x1, y1 = 0, 10
print('{} and {} = {}'.format(x1, y1, x1 and y1))
x2, y2 = 0, 0
print('{} and {} = {}'.format(x2, y2, x2 and 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

>>>

点赞