逻辑运算符Boolean operations

and 并且

计算时,两个都是 True 才是 True

1 <2 <3 <4 <
print(True and True)Trueprint(False and True)Falseprint(True and False)Falseprint(False and False)False

or 或者

一个是 True 就是 True

1 <2 <3 <4 <
print(True or True)Trueprint(False or True)Trueprint(True or False)Trueprint(False or False)False

not 非

逻辑取反

1 <2 <
print(not True)Falseprint(not False)True

bool 转换 规则

一些类型的值,可以通过 bool() 将其转换为 bool 类型

1 <2 <
print(bool(0))Falseprint(bool('abc'))True
转换规则对照表

这些会转换为 True

1
True, 1, 2, '0', '1', '2', [0], (1), (0, 1), {0}

这些会转换为 False

1
False, None, 0, '', [], (), (0), {}

and 操作 非 bool 类型

会返回 第一个 能转换为 False 的值

如果都不能转换为 False,则返回最后一个值

1 <2 <
print(0 and 'hello')0print(True and 312)312

or 操作 非 bool 类型

会返回 第一个 能转换为 True 的值

如果都不能转换为 True,则返回最后一个值

1 <2 <
print(10 or False)10print('' or 0)0

not 操作 非 bool 类型

会自动调用 bool() 将其转换为 bool 类型后,取反

1 <2 <
print(not 123)Falseprint(not '')True
广告

ZZAX 微信公众

文档一更新,立刻告诉你