if语句的格式
if语句可使程序产生分支,根据分支数量的不同,if语句分为单分支if语句、双分支if-else语句和多分支if-elif-else语句。具体介绍如下:
1. if语句
if语句是最简单的条件判断语句,它由三部分组成,分别是if关键字、条件表达式以及代码块。if语句根据条件表达式的判断结果选择是否执行相应的代码块,其格式如下:
if条件表达式:
代码块
上述格式中,if关键字可以理解为“如果”,当条件表达式的值为True时,则执行代码块。if语句的执行流程如图1所示。
图1 if语句执行流程
例如,使用if语句判断是否达到上幼儿园的年龄,示例代码如下。
age = 5
if age >= 3: # 如果大于或等于3岁即可上幼儿园
print("可以上幼儿园了")
上述代码中,首先定义了一个变量age,将其赋值为5,然后使用if语句判断表达式“age>=3”的值是否为True,如果为True,则输出“可以上幼儿园了”。
2.if-else语句
if-else语句产生两个分支,可根据条件表达式的判断结果选择执行哪一个分支。if-else语句格式如下:
if 条件表达式:
代码块1
else:
代码块2
上述格式中,如果if条件表达式结果为True,执行代码块1;如果条件表达式结果为False,则执行代码块2。if-else语句的执行流程如图2所示。
图2 if-else语句
例如,使用if-else语句描述用户登录场景,示例代码如下:
u_name = input("请输入用户名:")
pwd = input("请输入密码:")
if u_name == "admin" and pwd == "123":
print("登录成功!即将进入主界面。")
else:
print("您输入的用户名或密码错误,请重新输入。")
以上代码首先从控制台接收用户输入的用户名和密码,分别赋值给变量u_name和pwd,然后通过if-else语句进行判断:如果用户输入的用户名和密码分别为“admin”和“123”,则执行第4行代码,输出“登录成功!即将进入主界面。”,否则执行第6行代码,输出“您输入的用户名或密码错误,请重新输入。”。
3.if-elif-else语句
if-else语句可以处理两种情况,如果程序需要处理多种情况,那么可以使用if-elif-else语句。if-elif-else语句格式如下:
if 条件表达式1:
代码块1
elif 条件表达式2:
代码块2
elif 条件表达式3:
代码块3
elif 条件表达式n-1:
代码块n-1
else:
代码块n
上述格式中,if之后可以有任意数量的elif语句,如果条件表达式1的结果为True,那么执行代码块1,如果条件表达式2的结果为True,那么执行代码块2,以此类推,如果else前面的条件表达式结果都为False,那么执行代码块n。if-elif-else语句的执行流程如图3所示。
图3 if-elif-else语句
例如,某商场会员的积分规则如表1所示。
表1 会员积分规则
会员积分 | 会员级别 |
---|---|
0 | 注册会员 |
0<score≤2000 | 铜牌会员 |
2000<score≤10000 | 银牌会员 |
10000<score≤30000 | 金牌会员 |
30000<score | 钻石会员 |
使用if-elif-else语句实现表3-1的会员规则,示例代码如下:
score = int(input("请输入您的会员积分:"))
if score == 0:
print("注册会员")
elif 0 < score <= 2000:
print("铜牌会员")
elif 2000 < score <= 10000:
print("银牌会员")
elif 10000 < score <= 30000:
print("金牌会员")
else:
print('钻石会员')
上述代码首先定义了一个表示会员积分的变量score,然后根据积分规则从上至下进行等级判断。只要满足其中的一个条件,程序便会执行对应的输出语句,并结束条件判断语句。例如,输入2500,程序的输出结果是“银牌会员”。