第三章 python判断语句

第三章 python判断语句

逻辑判断是最基础的功能

3.1 布尔类型和比较运算符

  • 布尔类型:

    • 概念:进行判断,只有2个结果是或否,True表示真,False表示假

    • 定义变量存储布尔类型数据:变量名称 = 布尔类型字面量

    • 布尔类型的数据,可以通过定义得到,或者通过比较运算符进行比较得到

# 定义变量存储布尔类型的数据
bool_1 = True
bool_2 = False
print(f"bool_1变量的内容是:{bool_1},类型是{type(bool_1)}")
print(f"bool_1变量的内容是:{bool_2},类型是{type(bool_2)}")

#输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
bool_1变量的内容是:True,类型是<class 'bool'>
bool_1变量的内容是:False,类型是<class 'bool'>
  • 比较运算符
运算符描述示例
==判断内容是否相等,满足为True,不满足为Falsea=3,b=3,(a==b)为True
!=判断内容是否不相等,满足为True,不满足为Falsea=1,b=3,(a!=b)为True
>判断运算符左侧内容是否大于右侧,满足为True,不满足为Falsea=7,b=3,(a>b)为True
<判断运算符左侧内容是否小于右侧,满足为True,不满足为Falsea=3,b=7,(a<b)为True
>=判断运算符左侧内容是否大于等于右侧,满足为True,不满足为Falsea=3,b=3,(a>=b)为True
<=判断运算符左侧内容是否小于等于右侧,满足为True,不满足为Falsea=3,b=3,(a<=b)为True
# ==
num1 = 10
num2 = 10
print(f"10 == 10的结果是:{num1 == num2}")

#输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
10 == 10的结果是:True
# !=
num1 = 10
num2 = 15
print(f"10 != 15的结果是:{num1 != num2}")
# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
10 != 15的结果是:True

# == 字符串的比较
name1 = "python"
name2 = "Python"
print(f"python == Python的结果是:{name1 == name2}")

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
python == Python的结果是:False
# >、<、>=、<=
num1 = 10
num2 = 5
print(f"10 > 5的结果是:{num1 > num2}")
print(f"10 < 5的结果是:{num1 < num2}")
print(f"10 >= 5的结果是:{num1 >= num2}")
print(f"10 <= 5的结果是:{num1 <= num2}")

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
10 > 5的结果是:True
10 < 5的结果是:False
10 >= 5的结果是:True
10 <= 5的结果是:False

3.2 if语句的基本格式

基本语法格式:

if 要判断的条件:

条件成立时,要做的事情

python中是通过空格缩进来判断归属的

age = 24
if(age >= 18):
    print("已经成年了")
    print("即将大学毕业")
print("时间过得真快!")

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
已经成年了
即将大学毕业
时间过得真快!

注意:

  1. 判断语句的结果,必须是布尔类型。True会执行if内的语句,False不会执行
  2. 归属于if判断的代码块,前面须有四个空格缩进,因为python通过缩进判断代码块的归属关系
# 练习案例:成年人判断
'''
1.通过input语句,获取键盘输入,为变量age赋值(转换成数字类型)
2.通过if判断是否是成年人,满足条件则输出提示信息
'''

print("欢迎来到游乐园,儿童免费,成人收费")
age = int(input("请输入你的年龄:"))
if (age > 18):
    print("您已成年,需购票一张")
print("祝您游玩愉快")

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
欢迎来到游乐园,儿童免费,成人收费
请输入你的年龄:24
您已成年,需购票一张
祝您游玩愉快

3.3 if else 语句

基本语法格式:

if 条件:

满足条件执行语句1

满足条件执行语句2

...

else:

不满足条件执行语句1

不满足条件执行语句2

...

课后练习:

# 练习案例:成年人判断
'''
1.通过input语句,获取键盘输入,为变量age赋值(转换成数字类型)
2.通过if判断是否是成年人,满足条件则输出提示信息
'''

print("欢迎来到游乐园,儿童免费,成人收费")
age = int(input("请输入你的年龄:"))
if (age > 18):
    print("您已成年,需购票一张")
else:
    print("您未成年,可以免费游玩")
print("祝您游玩愉快")

D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
欢迎来到游乐园,儿童免费,成人收费
请输入你的年龄:13
您未成年,可以免费游玩
祝您游玩愉快

注意:

  1. else后,不需要写判断条件
  2. else代码块需要4个空格作为缩进

3.4 if elif else 语句

if elif else语句进行多条件判断

基本语法格式:

if 条件1:

条件1满足执行的语句

条件1满足执行的语句

...

elif 条件2:

条件2满足执行的语句

条件2满足执行的语句

...

elif 条件N:

条件N满足执行的语句

条件N满足执行的语句

...

else:

所有条件都不满足执行的语句

所有条件都不满足执行的语句

...

# 练习案例
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:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
欢迎来到游乐园
请输入你的身高(cm):110
请输入你的vip级别(1~5):1
您的身高低于120cm,可以免费游玩
祝您游玩愉快

注意:

  1. elif语句可以写多个
  2. 多条件判断,条件之间是互斥的,且是有顺序的
  3. 空格缩进不可忽略
  4. input语句可以直接写入判断条件中,节省代码量
# 简化后代码
print("欢迎来到游乐园")
if int(input("请输入你的身高(cm):")) < 120:
    print("您的身高低于120cm,可以免费游玩")
elif int(input("请输入你的vip级别(1~5):")) > 3:
    print("您的vip级别大于3,可以免费游玩")
else:
    print("您需要购票一张")
print("祝您游玩愉快")

课后练习:

'''
练习:猜数字
1.定义一个变量,数字类型,内容随意
2.基于iput语句输入猜想的数字,通过if和多次elif的组合,判读猜想数字与心里数字是否一致
'''
num = 7
if input("请输入第一次猜想的数字:")==num:
    print("恭喜,第一次就猜对了")
elif int(input("猜错了,再猜一次:")) == num:
    print("猜对了")
elif int(input("不对,再猜最后一次:")) == num:
    print("恭喜,猜对了")
else :
    print(f"Sorry,全都猜错了,我想的是:{num}")

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
请输入第一次猜想的数字:3
猜错了,再猜一次:2
不对,再猜最后一次:7
恭喜,猜对了

3.5 判断语句的嵌套

基本语法格式:

if 条件1:

满足条件1执行语句1

满足条件1执行语句2

if 条件2:

满足条件2执行语句1

满足条件2执行语句2

嵌套的关键点在于空格缩进,通过空格缩进来决定语句之间的层次关系。⭐

# 案例1
print("欢迎来到游乐园")
if int(input("请输入你的身高(cm):")) > 120:
    print("您的身高大于120cm,需要购票")
    print("不过如果你的vip等级大于3,可以免费游玩")
	if int(input("请输入你的vip级别(1~5):")) > 3:
    	print("恭喜你,您的vip级别达标,可以免费游玩")
    else:
    	print("你需要购票")
else:
    print("欢迎你小朋友,可以免费游玩")
print("祝您游玩愉快")

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
欢迎来到游乐园
请输入你的身高(cm):160
您的身高大于120cm,需要购票
不过如果你的vip等级大于3,可以免费游玩
请输入你的vip级别(1~5):5
恭喜你,您的vip级别达标,可以免费游玩
祝您游玩愉快
# 案例2
'''
公司要发礼物,条件是:
1.必须是大于等于18岁小于30岁的成年人
2.同时入职时间需满足大于两年,或者级别大于3才可领取
'''
age = 24
year = 3
level = 1
if age >= 18:
    print("你是成年人")
    if age < 30:
        print("你的年龄达标了")
        if year > 2:
            print("恭喜你,年龄和入职时间都达标,可以领取礼物")
        elif level > 3:
            print("恭喜你,年龄和级别达标,可以领取礼物")
        else:
            print("你的入职时间和级别不达标")
    else:
        print("不好意思,年龄未达标")
else:
    print("你不是成年人,不可以领取")

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
你是成年人
你的年龄达标了
恭喜你,年龄和入职时间都达标,可以领取礼物

3.6 实战案例

案例需求:定义一个数字(1~10随机产生),通过三次判断来猜出数据

案例要求:

  1. 数字随机产生,范围1-10
  2. 有3次机会猜测数字,通过三层嵌套判断实现
  3. 每次猜不中,会提示大了或小了
# 1.构建一个随机的数值变量
import random
num = random.randint(1,10)
guess_num = int(input("输入你要猜测的数字:"))

#2.通过if判断语句进行数字的猜测
if guess_num == num:
    print("恭喜,第一次就猜中了")
else:
    if guess_num > num:
        print("你猜测的数字大了")
    else:
        print("你猜测数字小了")

    guess_num = int(input("再次输入你要猜测的数字:"))

    if guess_num == num:
        print("恭喜,第二次猜中了")
    else:
        if guess_num > num:
            print("你猜测的数字大了")
        else:
            print("你猜测数字小了")
            
        guess_num = int(input("再次输入你要猜测的数字:"))
        if guess_num == num:
            print("恭喜,第三次猜中了")
        else:
            print("三次机会用完了,没有猜中")

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
输入你要猜测的数字:7
你猜测数字小了
再次输入你要猜测的数字:9
恭喜,第二次猜中了
  • 20
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值