判断语句
布尔类型
布尔类型的字面量:
True 表示真(是、肯定)
False 表示假 (否、否定)
- 定义变量存储布尔类型数据:
比较运算符
运算符 | 描述 |
---|---|
== | 比较两个对象是否相等 |
!= | 比较两个对象是否不相等 |
> | 大小比较,例如 x>y 将比较 x 和 y 的大小,如 x 比 y 大,返回 True,否则返回 False |
< | 大小比较,例如 x<y 将比较 x 和 y 的大小,如 x 比 y 小,返回T rue,否则返回 False |
>= | 比较两个对象是否相等大小比较,例如 x>=y 将比较 x 和 y 的大小,如 x 大于等于 y,返回 True,否则返回 False |
<= | 大小比较,例如 x<=y 将比较 x 和 y 的大小,如 x 小于等于 y,返回 True,否则返回 False |
可以定义布尔类型外,还可以通过比较运算符计算得到布尔类型
断言
断言用来在不满足某个条件时使程序中断运行。
语法:
assert cond
当cond为真程序正常执行,当cond为假程序中断
可以理解为:
我断言一种情况,正确接着执行;
不对?报错,给出正确情况
例如:
x=3
assert x>0, "x is zero or negtive"
assert x%2==0,"x is not an even number"
可以理解为:
我断言x>0,比较发现确实如此,继续执行,后半句“x is zero or negtive”不予理会;接着我断言 x%2==0,哎?不对,此时报出AssertionError,给出正确结论,x不是偶数
注意:
(1)assert断言用来声明某个条件是真
(2)如果你确信你的应用存在一种情况,并且非真时会引发错误,那么最好使用assert语句
(3)assert语句失败时,会引发一个AssertionError。
if语句的基本格式
1.if语句的基本格式
2.if语句的注意事项:
判断条件的结果一定要是布尔类型
不要忘记判断条件后的: 冒号
归属于if语句的代码块,需在前方填充4个空格缩进
例如:
判断语句的结果,必须是布尔类型True或False
True会执行if内的代码语句
False则不会执行
age = 18
print(f"今年我已经{age}岁了")
if age >= 18:
print("我已经成年了")
print("即将步入大学生活")
print("时间过的真快")
注意:
归属于if判断的代码语句块,需在前方填充4个空格缩进
Python通过缩进判断代码块的归属关系。
if else 语句
1.if else 语句,其中if和其代码块,条件满足时执行
else搭配if的判断条件,当不满足的时候执行
2. if else语句的注意事项:
else不需要判断条件,当if的条件不满足时,else执行
else的代码块,同样要4个空格作为缩进
例如:
print("欢迎来到游乐场,10岁以下免费,成人10元。")
age = int(input("请输入你的年龄:"))
if age >=10:
print("年龄不符合,需买票")
else:
print("年龄符合,免费游玩")
print("祝您游玩愉快")
if elif else 语句
1.if elif else语句的作用是----可以完成多个条件的判断
2. 使用if elif else的注意点有:
elif可以写多个
判断是互斥且有序的,上一个满足后面的就不会判断了
可以在条件判断中,直接写input语句,节省代码量
print ( "欢迎来到游乐园")
height = int(input("请输入你的身高(cm) : "))
vip_level = int(input("请输入你的vip级别(1~5): "))
if height < 120:
print("您的身高小于120CM,可以免费游玩。")
elif vip_level > 3:
print("您的vip级别大于3,可以免费游玩。")
else:
print("不好意思,所有条件都不满足,需要购票10元。")
print ("祝你游玩愉快。")
判断语句的嵌套
1. 嵌套判断语句可以用于多条件、多层次的逻辑判断
2. 嵌套判断语句可以根据需求,自由组合if elif else来构建多层次判断
3. 嵌套判断语句,一定要注意空格缩进,Python通过空格缩进来决定层次关系
基础语法格式:
- 第二个if,属于第一个if内,只有第一个if满足条件,才会执行第二个if
嵌套的关键点,在于:
空格缩进
通过空格缩进,来决定语句之间的:层次关系
例如:
公司要发礼物,条件是:
- 必须是大于等于18岁小于30岁的成年人
- 同时入职时间需满足大于两年,或者级别大于3才可领取
实战案例
案例需求:
定义一个数字(1~10,随机产生),通过3次判断来猜出来数字
案例要求:
- 数字随机产生,范围1-10
- 有3次机会猜测数字,通过3层嵌套判断实现
- 每次猜不中,会提示大了或小了
提示,通过如下代码,可以定义一个变量num,变量内存储随机数字
import random
num = random.randint(1,10)
print("随机数字已经产生,范围在1~10")
print(f"这个数字是{num}")
print("你有三次机会猜测,加油!")
if(int(input("第一次猜测"))==num):
print("恭喜你,第一次就猜对啦!")
print(f"这个数字是{num}")
print("游戏结束!")
else:
print("猜错啦!还有两次机会!")
if (int(input("第二次猜测")) == num):
print("恭喜你,第二次猜对!")
print(f"这个数字是{num}")
print("游戏结束!")
else:
print("猜错啦!还有一次机会!")
if(int(input("第三次猜测"))==num):
print("恭喜你,第三次猜对!")
print(f"这个数字是{num}")
print("游戏结束!")
else:
print("猜错啦!游戏结束!")
print(f"这个数字是{num}")