Python入门教程之逻辑运算符

Python入门教程:https://www.bilibili.com/video/BV1rmGczpEbG


逻辑运算符是用于逻辑运算的符号。


符号 描述
and 逻辑与
or 逻辑或
not 逻辑非

逻辑运算(基本)

逻辑运算就是布尔类型之间的运算

逻辑与

使用关键字"and"可以进行逻辑与运算,逻辑与运算即当两值均为True时结果为True,否则结果为False

python 复制代码
b1 = True and True
b2 = True and False
b3 = False and True
b4 = False and False

print(b1)  # True
print(b2)  # False
print(b3)  # False
print(b4)  # False

逻辑或

使用关键字"or"可以进行逻辑或运算,逻辑或运算即当两值存在True时结果为True,否则结果为False

python 复制代码
b1 = True or True
b2 = True or False
b3 = False or True
b4 = False or False

print(b1)  # True
print(b2)  # True
print(b3)  # True
print(b4)  # False

逻辑非

使用关键字"not"可以进行逻辑非运算,逻辑非运算即当值为True时结果为False,否则结果为True

python 复制代码
b1 = not True
b2 = not False

print(b1)  # False
print(b1)  # True

逻辑运算(扩展)

逻辑运算还可以扩展至其他类型

逻辑与

进行逻辑与运算时,会依据转换规则将前值视为布尔类型,如果被视为True则结果为后值,否则结果为前值

python 复制代码
b1 = 1 and 2  # True
b2 = 0 and 2  # False

print(b1)  # 2
print(b2)  # 0

逻辑或

进行逻辑或运算时,会依据转换规则将前值视为布尔类型,如果被视为True则结果为前值,否则结果为后值

python 复制代码
b1 = 1.0 or 2.0  # True
b2 = 0.0 or 2.0  # False

print(b1)  # 1.0
print(b2)  # 2.0

逻辑非

进行逻辑非运算时,会依据转换规则将值视为布尔类型,如果被视为True则结果为False,否则结果为True

python 复制代码
b1 = not '你好'  # True
b2 = not ''  # False

print(b1)  # False
print(b2)  # True

逻辑运算(短路)

进行逻辑与和逻辑或运算时,当前项满足一定条件,后项就不会执行

逻辑与

进行逻辑与运算时,如果前项为True则会执行后项,否则不会执行后项

python 复制代码
True and print(True)  # True
False and print(False)

进行逻辑与运算时,如果前项被视为True则会执行后项,否则不会执行后项

python 复制代码
1 and print(1)  # 1
0 and print(0)

逻辑或

进行逻辑或运算时,如果前项为False则会执行后项,否则不会执行后项

python 复制代码
True or print(True)
False or print(False)  # False

进行逻辑或运算时,如果前项被视为False则会执行后项,否则不会执行后项

python 复制代码
1 or print(1)
0 or print(0)  # 0
相关推荐
m0_73691910几秒前
C++中的类型标签分发
开发语言·c++·算法
天桥下的卖艺者4 分钟前
使用R语言编写一个生成金字塔图形的函数
开发语言·数据库·r语言
2301_790300967 分钟前
C++与微服务架构
开发语言·c++·算法
MACKEI7 分钟前
服务器流式传输接口问题排查与解决方案
python·nginx·流式
一切尽在,你来11 分钟前
C++多线程教程-1.1.4 并发编程的风险(竞态条件、死锁、数据竞争、资源争用)
开发语言·c++
艳阳天_.13 分钟前
web 分录科目实现辅助账
开发语言·前端·javascript
梵刹古音16 分钟前
【C语言】 循环结构
c语言·开发语言·算法
消失的旧时光-194318 分钟前
C++ 函数参数传递方式总结:什么时候用值传递、引用、const 引用?
开发语言·c++
2601_9498683619 分钟前
Flutter for OpenHarmony 剧本杀组队App实战04:发起组队表单实现
开发语言·javascript·flutter
一匹电信狗20 分钟前
【C++】CPU的局部性原理
开发语言·c++·系统架构·学习笔记·c++11·智能指针·新特性