判断语句
布尔类型
- 数字-布尔:表达现实生活的逻辑,即真假
- 字面量
True 本质是数字1
False 本质是数字0 布尔类型的数据,可通过定义得到,也可通过比较运算符进行内容比较得到
定义
bool_1 = True bool_2 = False print(f"bool_1变量的内容是:{bool_1},类型是:{type(bool_1)}") print(f"bool_2变量的内容是:{bool_2},类型是:{type(bool_2)}")
比较运算符
==、!=、<、>、>=、<=
num_1 = 10 num_2 = 10 print(f"10 == 10的结果是:{num_1 == num_2}")
或者
num1 = 10 num2 = 12 print(f"10 != 12的结果是:{num1 != num2}")
比较运算符
if判断语句
语法
if 要判断的条件 : (冒号很重要)
(四个空格)条件成立时,要做的事情
age = 30
if age >= 18:
print("我已成年")
if else语句
如果...满足条件时执行
否则...不满足时执行
print("欢迎来到游乐场,儿童免费,成人收费")
age =int(input("请输入你的年龄:"))
if age >= 18:
print("您已成年,游玩需要补票10元")
else:
print("您未成年可以免费游玩")
print("祝您游玩愉快")
- else后,不需要判断条件
else代码块同样要4个空格缩进
if elif else语句
多个判断条件
if 条件1:
elif 条件2:
elif 条件n:
else:
所有条件不满足应做事情
print("欢迎来到动物园")
height = int(input("请输入你的身高"))
vip = int (input("请输入你的vip等级"))
if height < 120:
print("小于120cm,可以免费")
elif vip > 3:
print("vip级别大于3,可以免费")
else:
print("不好意思,条件都不满足,需要买票10元")
print("祝您游玩愉快")
**注意:
- 多条件下,条件是互斥且有顺序的
- 如果1已满足,则2、3就没用了**
- 如果1、2、3都不满足,进入else
else可以不写,等同于3个独立的判断**
可以在条件判断中,直接写input语句,节省代码print("欢迎来到动物园") if int(input("请输入你的身高")) < 120: print("小于120cm,可以免费") elif int(input("请输入你的vip等级")) > 3: print("vip级别大于3,可以免费") elif int(input("请告诉我今天几号")) == 1: print("今天是1号免费日") print("祝您游玩愉快")
案例
定义一个变量,数字类型,基于input语句输入猜想的数字,通过if和多次elif,判断数字和猜想的是否一样
if int(input("猜一个数字")) == num:
print("第一次猜对啦")
elif int(input("猜错了,再猜一次:")) == num:
print("猜对啦")
elif int(input("猜错了,再猜一次:")):
print("最后一次猜对啦")
else:
print("猜错了")
判断语句嵌套
满足前置条件才会二次判断的多层判断需求
简单嵌套
if int(input("你的身高多少:")) > 120:
print("身高超出要求,不能免费")
print("但是,如果等级大于3,可以免费")
if int(input("你的等级多少:")) > 3:
print("恭喜你,级别达标,可以免费")
else:
print("等级不达标,需要买票10元")
else:
print("欢迎,免费游玩")
- 判断有2层
- 外层if满足,才执行内层if
- 外层if不满足,直接执行else
- 注意空格缩进
自由组合嵌套
案例1
公司发礼物,必须大于等于18岁小于30岁,同时入职时间需要大于两年,或者级别大于3才能领取
age = 20
year = 1
level = 2
if age > 18:
print("你是成年人")
if age < 30:
print("年龄达标")
if year > 2:
print("年龄和入职时间都满足,可以拿礼物")
elif level > 3:
print("年龄和级别满足,可以拿礼物")
else:
print("其他不满足,不能拿礼物")
else:
print("年龄不达标")
else:
print("不好意思,你未成年")
案例2
定义一个数字1-10,随机产生,通过3次嵌套判断猜出数字,每次猜不中会提示大还是小
import random
num = random.randint(1,10)
guess = int(input("输入你要猜的数字:"))
if guess == num:
print("第一次就猜对啦")
else:
if guess > num:
print("你猜大了")
else:
print("你猜小了")
guess = int(input("再次输入你要猜的数字:"))
if guess ==num:
print("第二次猜中啦")
else:
if guess > num:
print("你猜大了")
else:
print("你猜小了")
guess = int(input("最后一次输入你要猜的数字:"))
if guess == num:
print("猜对啦")
else:
print("猜错啦,没有机会了")
评论 (0)