Python学习——判断语句
目录
布尔类型(bool)与比较运算符
Ture(1)为真,False(0)为假。变量名称 = 布尔类型字面量或者比较运算结果。比较运算符有==,!=,>,<,>=,<=,其中 == 要求数据内容和类型均相等。
# 定义变量存储布尔类型字面量,数字类型,不能直接拼接,采用格式化
bool1 = True
bool2 = False
print("bool1变量的内容是%s,类型是%s" % (bool1, type(bool1)))
print("bool2变量的内容是%s,类型是%s" % (bool2, type(bool2)))
# 比较运算符
num1 = 10
num2 = 15
print(f"10 = 10的结果是{num1 == num2}")
# == 要求数据内容和类型均相等
num3 = 10
num4 = "10"
print(f"num3 == num4的结果是{num3 == num4}")
# 字符串
str1 = "feng1"
str2 = "feng2"
print(f"feng1 != feng2的结果是{str1 != str2}")
if语句的基本格式
if 条件:
条件成立时,要做的事情
注意:
- 条件的结果要为bool类型。
- 不能漏掉冒号“:”。
- 条件成立时的语句要与if语句查四个空格(要么通篇差两个空格,要么通篇差四个空格,不能混用)。
# if语句基本格式
age = 22
if age >= 18:
print(f"我今年{age}岁了,我即将步入研究生生活。")
print("哎呀")
# 上面两个print()语句在if条件成立时执行,下面一条print()语句不受if语句的影响。
print("时间过得真快!")
练习:成年人判断
# 成年人判断
print("欢迎来到风筝有风游乐场,儿童免费,成人收费。")
age = input("请输入您的年龄:")
# input()语句需要进行类型转换成数字类型
age = int(age)
age = int(input("请输入您的年龄:"))
if age >= 18:
print("您已成年,游玩需要补票10元。")
print("祝您游玩愉快。")
if else 语句
if 条件:
满足条件时的事情
else:
不满足条件时做的事情
注意:冒号与空格。
# if else组合语句判断
print("欢迎来到风筝有风游乐场,儿童免费,成人收费。")
age = int(input("请输入您的年龄:"))
if age >= 18:
print("您已成年,游玩需要补票10元。")
else:
print("您未成年,无需购票,免费游玩。")
print("祝您游玩愉快。")
练习:我要买票吗
# 我要买票吗
print("欢迎来到风筝有风海洋馆。")
height = int(input("请输入您的身高(cm):"))
if height >= 120:
print("您的身高超过120cm,游玩需要10元。")
else:
print("您的身高未超过120cm,无需购票,免费游玩。")
print("祝您游玩愉快。")
if_elif_elif_else结构
多个条件判断。
注意:
- 可以有多个elif语句。
- 判断是互斥且有顺序。
- else可以不写。
- 可以将input()语句直接写入判断条件中。
# if_elif_else 多条件判断语句
# 全部输入数据之后再判断
height = int(input("请输入您的身高(cm):"))
vip_level = int(input("请输入您的vip等级(1-5):"))
day = int(input("今天是几号:"))
if height < 120:
print("您的身高未超过120cm,无需购票,免费游玩。")
elif vip_level > 3:
print("vip级别大于3,可以免费游玩。")
elif day == 1:
print("今天是1号,可以免费游玩。")
else:
print("您不满足免费游玩条件,请购票。")
print("祝您游玩愉快。")
# input()语句直接写入判断条件中。逻辑改变,输入一个信息判断一个信息
if int(input("请输入您的身高(cm):")) < 120:
print("您的身高未超过120cm,无需购票,免费游玩。")
elif int(input("请输入您的vip等级(1-5):")) > 3:
print("vip级别大于3,可以免费游玩。")
elif int(input("今天是几号:")) == 1:
print("今天是1号,可以免费游玩。")
else:
print("您不满足免费游玩条件,请购票。")
print("祝您游玩愉快。")
练习:猜猜心里数字
num = 10
if num == int(input("请输入第一次猜想的数字:")):
print("第一次就猜对了!")
elif num == int(input("不对,再猜一次:")):
print("第二次就猜对了!")
elif num == int(input("还是不对,再猜一次:")):
print("终于猜对了!")
else:
print(f"三次都没猜对,是{num}啦!")
判断语句的嵌套
用于多条件多层次的逻辑判断,可以自由组合,通过空格缩进,决定语句之间的层次关系。
# 多个判断条件嵌套
if int(input("你的身高多少:")) > 120:
print("身高超出限制,不可以免费")
print("但是,如果您的vip等级大于3级,可以免费")
if int(input("您的vip等级是:")) >= 3:
print("您的vip等级满足条件可以免费")
else:
print("不满足条件,请购票")
else:
print("身高低于120cm,免票")
# 多个嵌套
age = int(input("请输入你的年龄"))
year = int(input("请输入你的在岗时间"))
level = int(input("请输入你的职位级别"))
if age >= 18:
print("你是成年人")
if age <= 30:
print("年龄达标")
if year > 2:
print("入职时间也达标,可以领取礼物。")
elif level > 3:
print("入职时间未达标,但级别大于3,可以领取礼物。")
else:
print("尽管年龄达标,但入职时间和级别不达标,不能领取礼物。")
else:
print("年龄超过30,不满足条件,不能领取礼物。")
else:
print("年龄低于18,不满足条件,不能领取礼物。")
实战案例:猜数字
定义一个数字(1-10,随机产生),通过三次判断猜出数字
要求:
1.数字随机产生,1-10之间。
2.有三次机会猜数字,通过三层嵌套实现。
3.每次猜不中,提示大了还是小了。
提示:通过如下代码产生1-10的随机数字。
import random
num = random.randint(1, 10)
import random
num = random.randint(1, 10)
guess_num = int(input("请输入你猜的数字:"))
if guess_num == num:
print(f"恭喜你,第一次就猜中了,数字是{num}")
else:
if guess_num > num:
print("你猜的数字大了")
else:
print("你猜的数字小了")
guess_num = int(input("请第二次输入你猜的数字:"))
if guess_num == num:
print(f"恭喜你,第二次就猜中了,数字是{num}")
else:
if guess_num > num:
print("你猜的数字大了")
else:
print("你猜的数字小了")
guess_num = int(input("请第三次输入你猜的数字:"))
if guess_num == num:
print(f"恭喜你,第三次猜中了,数字是{num}")
else:
print(f"三次全猜错了,数字是{num}")