用来表达现实生活中的逻辑,即真与假
# 定义布尔类型的字面量:
True 表示真(是、肯定)
False 表示假 (否、否定)
# True本质上是一个数字记作1,False记作0
可自行定义
# 变量名称 = 布尔类型字面量
name = True
name = False
可以通过使用比较运算符进行比较运算得到布尔类型的结果
注:
== 为比较运算符
= 为赋值运算符
切不可以混用
bool_name = "无敌" == "无敌"
bool_age = 19 <= 18
print(f"年龄{bool_age}") # 输出 年龄 False
print(f"姓名{bool_name}") # 输出 姓名 True
print(f"数据类型{type(bool_age)}") # 输出 数据类型
在python当中,以下变量都会被当成False:任何数值类型的0、""或’'空字符串、空元组()、空列表[]、空字典{}等。
and和or运算符会将其中一个表达式的值作为最终结果,而不是将 True 或者 False 作为最终结果
当遇到一个语句当中有多个逻辑运算符时,按照优先级not>and>or顺序来运算
两边都是表达式:and两边的表达式都为真时,才为真,否则为假。
print(15 > 10 and 15 > 6) # 打印 True
print(15 > 10 and 15 < 6) # 打印 False
不全是表达式:
左边表达式的值为假,左边表达式的值作为最终结果。
左边表达式的值为真,右边表达式的值作为最终结果。
两边都是表达式:or两边的表达式只要有一个真即为真,否则为假
print(15 > 10 or 15 > 6) # 打印 True
print(15 > 10 or 15 < 6) # 打印 True
print(15 < 10 or 15 < 6) # 打印 False
不全是表达式
print({} or 15) # 打印 15
print(6 or 15) # 打印 6
当表达式为真时,运算结果就为假;当表达式为假时,运算结果为真。not可以理解为取反的意思
print(not 16 > 9) # 打印 False
print(not 16 < 9) # 打印 True
条件为True 执行,条件为False跳过
if 要判断的条件:条件为True时执行该语句
# if与判断条件之间至少保留一个空格
# 判断条件后方需要加冒号:
# 执行语句前必须有四个空格
示例代码:
# 判断条件为 True,输出 您已成年
age = 19
if age > 18:print("您已成年")
# 判断条件为 False 无输出
if age > 30:print("无敌")
if 要判断的条件:条件为True时执行该处语句
else:条件为False时执行该处语句
# if部分写法不变
# else 后不需要再写条件,但需要冒号:
# else 需与if对齐
示例代码:
age = 19
if age > 18:print("您已成年")
else:print("您未成年")
# 条件为True,执行if下方的 输出 您已成年
if 判断的条件:条件为True时执行
elif 判断的条件:条件为True时执行
elif 判断的条件:条件为True时执行
else:上述条件都为False时执行
# elif语法与if类似
# if/else之间可以包含多个elif
# else语句可以不写
示例代码:
# age都不满足,执行else分支 输出 welcome
age = 1
if age > 10:print("无敌")
elif age < 0:print("study")
elif age > 2:print("blog")
else:print("welcome")
# 判断是互斥且有序的,上面条件满足后面的就不会判断执行了
当满足前置条件时进行二次判断
if 判断的条件:条件为True时执行if 判断的条件:条件为True时执行else:条件为False时执行
else:条件为False时执行if 判断的条件:条件为True时执行else:条件为False时执行# 嵌套的关键点在于:空格缩进
# 通过空格缩进,来决定语句之间的:层次关系
示例代码:
age = 20
money = 10
if age < 18:print("第一处if")if money > 9:print("第二处if")else:print("第二处else")
else:print("第一处else")if money > 9:print("第二处if")else:print("第二处else")
# 输出
"""
第一处else
第二处if
"""
# age > 18 进入第一层else
# money > 9,进入第一层第二处if