目录
一、引言
二、Python 分支结构的类型与语法
(一)if 语句(单分支)
(二)if - else 语句(双分支)
(三)if - elif - else 语句(多分支)
三、分支结构的应用场景
(一)提示用户输入用户名,然后再提示输入密码,如果用户名是“admin”并且密码是“88888”则提示正确,否则,如果用户名不是admin还提示用户用户名不存在,
(二)提示用户输入用户名,然后再提示输入密码,如果用户名是“admin”并且密码是“88888”,则提示正确,否则,提示用户“用户名或者密码错误”,但如果错误达到3次,则提示用户"您的账户已被冻结",退出程序。
(三)输入三个数字,求最大的数字和最小的数字的差。
(四)让用户输入小茗的语文和数学成绩,输出以下判断是否正确,正确输出true,错误输出false
四、总结
在 Python 编程中,除了通过运算符进行数据运算,分支结构也是构建程序逻辑的重要组成部分。它就像程序的 “决策中心”,能根据不同的条件,让程序执行不同的代码块,从而实现更复杂、灵活的功能。在掌握了 Python 运算符的基础上,学习分支结构将进一步提升我们的编程能力。接下来,让我们深入探索 Python 中分支结构的奥秘。
if语句是 Python 中最基本的分支结构,用于当满足某个条件时执行特定的代码块。其语法格式如下:
if “条件表达式”:
代码块
其中,“条件表达式” 通常是使用比较运算符、逻辑运算符等构成的表达式,其结果为布尔值(True或False)。如果 “条件表达式” 的值为True,则执行 “代码块” 中的代码;若为False,则跳过 “代码块”。例如:
age = 18
if age >= 18:
print("你已经成年了")
在这个例子中,age >= 18是条件表达式,由于age的值为 18,条件成立,所以会输出 “你已经成年了”。
if - else语句在if语句的基础上,增加了不满足条件时的执行路径。当 “条件表达式” 为True时,执行if后面的 “代码块”;当 “条件表达式” 为False时,执行else后面的 “代码块”。语法格式如下:
if 条件表达式:
代码块1
else:
代码块2
例如,判断一个数是奇数还是偶数:
num = 7
if num % 2 == 0:
print(f"{num}是偶数")
else:
print(f"{num}是奇数")
这里使用了取模运算符%,num % 2 == 0作为条件表达式,因为 7 除以 2 的余数不为 0,条件为False,所以会执行else后面的代码块,输出 “7 是奇数” 。
当需要根据多个条件进行判断时,可以使用if - elif - else语句。elif是else if的缩写,它可以有多个,程序会按照顺序依次判断每个条件表达式,一旦某个条件为True,就执行对应的代码块,后面的条件判断将不再执行;如果所有条件都不满足,则执行else后面的代码块(else部分可选)。语法格式如下:
if 条件表达式1:
代码块1
elif 条件表达式2:
代码块2
...
else:
代码块n
例如,根据学生成绩划分等级:
num1 = input("输入学员的成绩:")
# 验证输入是否为数字
try:
score = float(num1)
grade = ["A", "B", "C", "D", "E"]
if 90 <= score <100 :
print(f"该学员的结业考试成绩评测结果为:{grade[0]}")
elif 80 < score <= 90:
print(f"该学员的结业考试成绩评测结果为:{grade[1]}")
elif 70 < score <= 80:
print(f"该学员的结业考试成绩评测结果为:{grade[2]}")
elif 60 < score <= 70:
print(f"该学员的结业考试成绩评测结果为:{grade[3]}")
elif 0 < score <= 60:
print(f"该学员的结业考试成绩评测结果为:{grade[4]}")
else:
print("超出范围!!")
except ValueError:
print("输入错误:请输入有效的数字!")
在这个例子中,score的值为 85,首先判断score >= 90,条件不成立;接着判断score >= 80,条件成立,所以执行对应的代码块,输出 “良好”,后续的条件判断不再进行。
在程序接收用户输入时,常使用分支结构对输入进行验证。比如,要求用户输入一个用户名:
# 如果用户名是admin则提示密码错误。
username = input("输入用户名:")
password = input("输入密码:")
if username == "admin" and password == "88888":
print("正确")
else:
if username != "admin":
print("用户名不存在")
else:
print("密码错误")
通过分支结构判断用户输入的username是否是admin,从而提示用户输入是否正确。再判断密码是否正确
count = 0
while count < 3:
username = input("请输入用户名:")
password = input("请输入密码:")
if username == "admin" and password == "88888":
print("正确")
break
else:
count += 1
print(f"用户名或者密码错误,您还有{3 - count}次机会")
else:
print("您的账户已被冻结")
a1 = int(input("输入第一个数:"))
b1 = int(input("输入第二个数:"))
c1 = int(input("输入第三个数:"))
# 当a1大于b1时
if a1 > b1:
if c1 > a1:
print(c1 - b1)
else:
if c1 < b1:
print(a1 - c1)
else:
print(a1 - b1)
# 当a1小于b1时
else:
if c1 > b1:
print(c1 - a1)
else:
if c1 < a1:
print(b1 - c1)
else:
print(b1 -a1)
这里使用分支结构根据三个数的大小,给出相应的提示。
# a、小茗的语文和数学成绩都大于90分;
Chinese1 = input("输入小茗的语文成绩:")
Math1 = input("输入小茗的数学成绩:")
# 验证输入是否为数字
try:
num1 = float(Chinese1)
num2 = float(Math1)
if num1 > 90 and num2 > 90:
print("true")
else:
print("false")
except ValueError:
print("输入错误:请输入有效的数字!")
# b、语文和数学有一门是大于90分的。
Chinese2 = input("输入小茗的语文成绩:")
Math2 = input("输入小茗的数学成绩:")
# 验证输入是否为数字
try:
num3 = float(Chinese2)
num4 = float(Math2)
if num3 > 90 or num4 > 90:
print("true")
else:
print("false")
except ValueError:
print("输入错误:请输入有效的数字!")
通过if - elif - else结构,对每个成绩进行判断。
Python 中的分支结构为程序赋予了决策能力,使程序能够根据不同条件执行不同的操作。无论是简单的if语句,还是更复杂的if - elif - else语句,都在编程中有着广泛的应用。通过结合运算符构建条件表达式,分支结构可以处理各种复杂的逻辑判断。希望你通过不断练习,熟练掌握分支结构的使用,编写出更具逻辑性和实用性的 Python 程序。如果在学习过程中有任何疑问,或者想了解分支结构在特定场景中的应用,欢迎随时和我交流。