Python bool()内置函数 --返回一个布尔值

内置函数 bool() 返回一个布尔值,即 TrueFalse,布尔运算的用途有三种

直接用数据做运算

在python中为 False 的数据是有限的,除此之外皆为 True

False 的数据共有六种:

布尔值 整数0 空字符串 空列表 空字典 空值
False 0 '' [] {} None

剩下的数据为 True

例如:

1
2
3
4
5
6
7
8
9
if 0:
# 因为0为False,所以不会执行下面语句
print(0)

if 1314:
# 因为1314为True,所以会执行下面语句
print(1314)

# 1314

比较两个数值

1
2
3
4
5
6
7
8
9
10
number = 520
if 1314 > number:
# 因为1314>520为True,所以会执行下面语句
print('1314大于520')

if 250 == number:
# 因为250==520为False,所以不会执行下面语句
print('250不等于520')

# 1314大于520

注意区分赋值 = 和等于 ==

布尔值之间的运算

and

只有两个结果都为 True 时,结果才为 True ,其余为 False

布尔值之间的运算 结果
True and True True
True and False False
False and True False
False and False False

例如:

1
2
3
4
5
6
7
8
9
10
11
12
# True and True
if (1314 > 520) and (1314 != 520):
print(bool((1314 > 520) and (1314 != 520)))
print('两个条件判断都True')

# True and False
if (1314 > 520) and (1314 == 520):
print(bool((1314 > 520) and (1314 == 520)))
print('有一个条件判断False')

# True
# 两个条件判断都True

or

只有两个结果都为 False 时,结果才为 False ,其余为 True

布尔值之间的运算 结果
True or True True
True or False True
False or True True
False or False False

例如:

1
2
3
4
5
6
7
8
9
10
11
12
# True and False
if (1314 > 520) or (1314 == 520):
print(bool((1314 > 520) or (1314 == 520)))
print('至少有一个条件判断True')

# False and False
if (1314 < 520) or (1314 == 520):
print(bool((1314 < 520) or (1314 == 520)))
print('两个条件判断都False')

# True
# 至少有一个条件判断True

not

结果反转

布尔值之间的运算 结果
not True False
not False True

例如:

1
2
3
4
5
6
7
8
9
10
if not (1314 > 520):
print(bool(not (1314 > 520)))
print('not True反转False')

if not (1314 < 520):
print(bool(not (1314 < 520)))
print('not False反转True')

# True
# not False反转True

in

判断一个元素是否 一堆数据之中

例如:

1
2
3
4
5
6
7
8
list = [1314, 520, '雨园博客']
name1 = '雨园博客'
name2 = '雨园'
print(bool(name1 in list))
print(bool(name2 in list))

# True
# False

not in

判断一个元素是否 不在 一堆数据之中

例如:

1
2
3
4
5
6
7
8
list = [1314, 520, '雨园博客']
name1 = '雨园博客'
name2 = '雨园'
print(bool(name1 not in list))
print(bool(name2 not in list))

# False
# True