选择结构主要通过if、elif(else if的缩写)和else语句来实现。这些语句允许程序根据条件执行不同的代码块。另外还有表达式中多个条件连接等。
一、基本语句if
if 语句后面跟一个条件表达式,如果条件为真(True),则执行 if 块内的代码。
x = eval(input('i请输入一个值:'))
if x==0:
print('x真为零')
print('x为:',x)
if not x==0:
print('11')
print('22')
print('44')
print('33')
执行两次结果
二、双分支结构if-else
f-else 语句在if条件不满足(即为假)时,执行 else 块内的代码
x = eval(input('i请输入一个值:'))
if x==0:
print('x真为零')
else:
print('11')
三、多分支选择结构if-elif-else
if-elif-else 语句是 if 语句的扩展,它允许你检查多个表达式是否为真,并在第一个为真时执行其对应的代码块。如果所有if和elif的条件都不满足,则执行else块(如果存在)。
score = eval(input('请输入你的成绩:'))
if score < 0 or score >100:
print('成绩有误!')
elif 0 <= score <60:
print('E')
elif 60 <= score <70:
print('D')
elif 70 <= score <80:
print('C')
elif 80 <= score <90:
print('B')
else:
print('a')
四、嵌套if
if 语句可以嵌套在另一个 if 语句、elif 语句或else语句中。这允许你根据多个条件执行更复杂的逻辑。
x = 15
y = 10
if x > 10:
if y > 5:
print("x 大于 10 且 y 大于 5")
else:
print("x 大于 10 但 y 不大于 5")
else:
print("x 不大于 10")
五、多个条件并列 and连接和或or连接
user_name = input('请输入用户名')
psd = input('请输入用户密码')
if user_name=='ysd' and psd=='99999999':
print('登陆成功')
else:
print('登陆用户失败或者密码错误!')
score = eval(input('请输入您的成绩!'))
if score <0 or score >100:
print('成绩无效')
else:
print('您的成绩为:',score)
六、模式匹配(相当于switch)
模式匹配(Pattern Matching)是通过match语句引入的,这是Python 3.10及更高版本中新增的一个功能。match语句提供了一种更直观和强大的方式来根据值或结构来比较和选择执行路径,类似于其他编程语言中的模式匹配特性(如Rust、Scala或Haskell)
status = input('请输入:')
match status:
case '400':
print('操作失败')
case '404':
print('连接失败')
case '408':
print('重新再试一次')