条件语句中的elif

什么是elif

  • elif(或者如果)对于命题的非第一次的多种判断 , 每一种判断条件对应一组业务代码

条件语句的说明

  • 对于首次if判断不满足后 , 其他条件的判断语句

用法

1
2
3
4
5
6
7
8
if bool_result :
do
elif bool_result:
elifdo # 当前elif语句对应的语法块
elif bool_result:
elifdo # 缩进等级与do语法块一致
else:
elsedo

2

3

参数

  • elifdo : 当前elif语句对应python代码

返回值

  • elif属于语法 , 没有返回值

说明

  • 条件语句中满足一个条件后 , 将退出当前条件语句
  • 每个条件语句中仅有且必须有一个if语句
    • 可以有0个或多个 elif语句
    • 可以有0个或1个 else语句
  • 每个条件语句 if 必须是第一个条件语句

练习

  • 有一个班级,班级有很多同学,每个同学有如下信息: 名字 年龄 分数 , 现在来了一个插班生,将这个小明放到成绩单里,这里要做判断,如果班级里有小明,就说明重名了,那么要给新的小明的后面加个新字并存入
  • 用列表与字典两种类型, 用两种方法做题
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# coding:utf-8

number = 10

if number > 10:
print('number的值大于10')
elif 5 < number <= 10:
print('number的值在5和10之间')
elif 5 >= number > 0:
print('number的值是1~5')
else:
print('number的值是0或者复数')

print('finish')

users = [
('dewei', 30, 90),
('xiaomu', 10, 99),
('xiaoming', 18, 100)
]

xiaoming = ['xiaoming', 19, 90]

if users[0][0] == xiaoming[0]:
xiaoming[0] = '%s_new' % xiaoming[0]
users.append(xiaoming)
elif users[1][0] == xiaoming[0]:
xiaoming[0] = '%s_new' % xiaoming[0]
users.append(xiaoming)
elif users[2][0] == xiaoming[0]:
xiaoming[0] = '%s_new' % xiaoming[0]
users.append(xiaoming)
else:
users.append(xiaoming)

print(users)


users = {
'dewei': {'age': 33, 'count': 90},
'xiaomu': {'age': 10, 'count': 99},
'xiaoming': {'age': 18, 'count': 100}
}

if xiaoming[0] in users:
xiaoming[0] = '%s_new' % xiaoming[0]
else:
users[xiaoming[0]] = {'age': xiaoming[1], 'count': xiaoming[2]}
print(users)