【Python】二.判断语句
文章目录
- 一. 布尔类型
- 二. 逻辑运算符
- 三. if判断语句
一. 布尔类型
(1) 定义
# 定义布尔类型的字面量:
True 表示真(是、肯定)
False 表示假 (否、否定)
# True本质上是一个数字记作1,False记作0
(2) 获取
可自行定义
# 变量名称 = 布尔类型字面量
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)}") # 输出 数据类型<class 'bool'>
二. 逻辑运算符
- 在python当中,以下变量都会被当成False:任何数值类型的0、""或’'空字符串、空元组()、空列表[]、空字典{}等。
- and和or运算符会将其中一个表达式的值作为最终结果,而不是将 True 或者 False 作为最终结果
- 当遇到一个语句当中有多个逻辑运算符时,按照优先级not>and>or顺序来运算
(1) and 运算符
- 两边都是表达式:and两边的表达式都为真时,才为真,否则为假。
# 变量名称 = 布尔类型字面量
print(15 > 10 and 15 > 6) # 打印 True
print(15 > 10 and 15 < 6) # 打印 False
- 不全是表达式:
(1) 左边表达式的值为假,左边表达式的值作为最终结果。
(2) 左边表达式的值为真,右边表达式的值作为最终结果。
print({} and 15) # 打印 {}
print(6 and 15) # 打印 15
(2) or 运算符
- 两边都是表达式:or两边的表达式只要有一个真即为真,否则为假
print(15 > 10 or 15 > 6) # 打印 True
print(15 > 10 or 15 < 6) # 打印 True
print(15 < 10 or 15 < 6) # 打印 False
- 不全是表达式
(1) 左边表达式的值为假,右边表达式的值作为最终结果。
(2) 左边表达式的值为真,左边表达式的值作为最终结果。
print({} or 15) # 打印 15
print(6 or 15) # 打印 6
(3) not 运算符
当表达式为真时,运算结果就为假;当表达式为假时,运算结果为真。not可以理解为取反的意思
print(not 16 > 9) # 打印 False
print(not 16 < 9) # 打印 True
三. if判断语句
条件为True 执行,条件为False跳过
(1) if 格式
age =17
if age >=18:print("可以投票")print("可以投票----")
if age >= 15:print("可以上网")
(2) if-else 格式
if 要判断的条件:条件为True时执行该处语句
else:条件为False时执行该处语句
# if部分写法不变
# else 后不需要再写条件,但需要冒号:
# else 需与if对齐age = 19
if age > 18:print("您已成年")
else:print("您未成年")
# 条件为True,执行if下方的 输出 您已成年
(3) if-elif-else 格式
if 判断的条件:条件为True时执行
elif 判断的条件:条件为True时执行
elif 判断的条件:条件为True时执行
else:上述条件都为False时执行
# elif语法与if类似
# if/else之间可以包含多个elif
# else语句可以不写age = int(input("请输入年龄:"))
if age >= 18:print("可以投票")
elif age >= 15:print("可以上网")
else:print("不可以投票")
print("可以投票777")
(4) 判断语句的嵌套
- 嵌套的关键点在于:空格缩进
- 通过空格缩进,来决定语句之间的:层次关系
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