Python判断语句

布尔类型和比较运算符

布尔类型的定义:

布尔类型只有两个值:True 和 False 可以通过定义变量存储布尔类型数据: 变量名称 = 布尔类型值(True/False) 布尔类型不仅可以自行定义,同时也可通过计算获得。也就是通过比较运算符进行比较运算得到布尔类型的结果。

比较运算符

实例

python 复制代码
"""
布尔类型的定义和比较运算符应用
"""
#定义变量存储布尔类型的数据
bool_1 = True
bool_2 = False
print(f"bool_1变量的内容{bool_1},类型是:{type(bool_1)}")
print(f"bool_2变量的内容{bool_2},类型是:{type(bool_2)}")
#比较运算符
# ==,!=,>,<,>=,<=
num1 = 10
num2 = 10
print(f"10 == 10的结果是:{num1==num2}")

num1 = 10
num2 = 15
print(f"10 != 10的结果是:{num1!=num2}")

num1 = "Python"
num2 = "Pythons"
print(f"Python == Pythons的结果是:{num1==num2}")

num1 = 10
num2 = 5
print(f"10 > 5的结果是:{num1>num2}")
print(f"10 < 5的结果是:{num1<num2}")

num1 = 10
num2 = 10
print(f"10 >= 10的结果是:{num1>num2}")
print(f"10 <= 10的结果是:{num1<num2}")

结果

python 复制代码
D:\Study\PythonManage\.venv\Scripts\python.exe D:\Study\PythonManage\Demo\Demo1.py 
bool_1变量的内容True,类型是:<class 'bool'>
bool_2变量的内容False,类型是:<class 'bool'>
10 == 10的结果是:True
10 != 10的结果是:True
Python == Pythons的结果是:False
10 > 5的结果是:True
10 < 5的结果是:False
10 >= 10的结果是:False
10 <= 10的结果是:False

if 语句的基本格式

python 复制代码
if 要判断的条件:
    条件成立时,要做的事情


age = 30
if age >= 18:
    print("我已经成年了")

注意: 判断语句的结果,必须时布尔类型 True 或 False True 会执行 if 内的代码语句,False 不会执行 if 内的语句。 确认是否归属 if 判断内的代码语句块,需要在前方填充 4 个空格缩进 python 通过空格缩进判断代码块的归属关系

if else 语句

python 复制代码
if	条件:
    满足条件要做的事情1
    满足条件要做的事情1
    ......
else:
    不满足条件要做的事情1
    不满足条件要做的事情2
    ......

注意: else 后,不需要判断条件 和 if 的代码块一样,else 的代码块同样需要 4 个空格缩进 实例:

python 复制代码
print("欢迎来到儿童游乐场,儿童免费,成人收费")
#获取输入的年龄
age = int(input("请输入您的年龄:"))
#判断是否需要收费
if age >= 18:
    print("您已成年,需要补票10元")
else:
    print("您未成年,可以免费游玩")

print("祝您游玩愉快!")

输出结果:
D:\Study\PythonManage\.venv\Scripts\python.exe D:\Study\PythonManage\Demo\Demo1.py 
欢迎来到儿童游乐场,儿童免费,成人收费
请输入您的年龄:30
您已成年,需要补票10元
祝您游玩愉快!

if elif else 语句

python 复制代码
if	条件1:
    满足条件1要做的事情1
    满足条件1要做的事情1
    ......
elif 条件2:
    满足条件2要做的事情1
    满足条件3要做的事情1
    ......
else:
    不满足两个条件要做的事情1
    不满足两个条件要做的事情2
    ......

注意: elif 语句是可以写多个 判断条件是互斥并且有执行顺序的 满足条件 1 将不会判断是否满足条件 2 及其他 不满足条件 1,满足条件 2 执行条件 2 内的代码块,不判断条件 2 后面的条件 如果前面的条件全部判断为不满足,则执行 else 代码块 else 也可以省略不写,效果等同于多个独立的 if 判断 同样空格缩进不能省略 实例:

python 复制代码
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("不好意思,所有条件都不满足,请购票!")

print("祝您游玩愉快!")

输出结果:
D:\Study\PythonManage\.venv\Scripts\python.exe D:\Study\PythonManage\Demo\Demo1.py 
欢迎来到动物园
请输入您的身高(cm):170
请输入您的vip等级(1-5):2
不好意思,所有条件都不满足,请购票!
祝您游玩愉快!

判断语句的嵌套

在很多场景中,不仅是多个并列的判断,还会有满足前置条件判断,才会执行二次判断,这种场景可通过嵌套判断实现。

python 复制代码
if 条件1:
    满足条件1要做的事情1
    满足条件1要做的事情2

    if 条件2:
        满足条件2要做的事情1
        满足条件2要做的事情2

注意: 嵌套的关键在于空格缩进,通过空格缩进来体现不通过判断语句之间的层次关系。 如上面代码所示: 判断条件有 2 层 当外层 if 满足条件时,才会执行 if 判断内部代码块的条件 2 是否成立 当外层 if 不满足条件时,直接执行外层的 else 代码块。 实例:

python 复制代码
#获取输入的年龄
age = int(input("请输入您的年龄:"))
year = int(input("请输入您的在职年数:"))
level = int(input("请输入您的岗位级别(1-5):"))

if age >= 18:
    print("成年人符合,继续判断")
    if age < 30:
        print("年龄达标,继续判断")
        if year > 2:
            print("小于30岁的成年人且入职超过2年,满足条件,可以领取")
        else:
            print("Sorry,年龄符合,但入职时间不足")
    elif level > 3:
        print("级别大于3的成年人可以直接领取")
    else:
        print("您的过大或级别小于等3,不可领取")
else:
    print("Sorry,未成年人不可领取")

输出结果:
D:\Study\PythonManage\.venv\Scripts\python.exe D:\Study\PythonManage\Demo\Demo1.py 
请输入您的年龄:25
请输入您的在职年数:3
请输入您的岗位级别(1-5):2
成年人符合,继续判断
年龄达标,继续判断
小于30岁的成年人且入职超过2年,满足条件
相关推荐
zopple5 小时前
常见的 Spring 项目目录结构
java·后端·spring
cjy0001117 小时前
springboot的 nacos 配置获取不到导致启动失败及日志不输出问题
java·spring boot·后端
小江的记录本8 小时前
【事务】Spring Framework核心——事务管理:ACID特性、隔离级别、传播行为、@Transactional底层原理、失效场景
java·数据库·分布式·后端·sql·spring·面试
sheji34168 小时前
【开题答辩全过程】以 基于springboot的校园失物招领系统为例,包含答辩的问题和答案
java·spring boot·后端
程序员cxuan8 小时前
人麻了,谁把我 ssh 干没了
人工智能·后端·程序员
wuyikeer10 小时前
Spring Framework 中文官方文档
java·后端·spring
Victor35610 小时前
MongoDB(61)如何避免大文档带来的性能问题?
后端
Victor35610 小时前
MongoDB(62)如何避免锁定问题?
后端
wuyikeer10 小时前
Spring BOOT 启动参数
java·spring boot·后端
子木HAPPY阳VIP11 小时前
Ubuntu 22.04 VMware 设置固定IP配置
人工智能·后端·目标检测·机器学习·目标跟踪