B站视频讲解:
https://www.bilibili.com/video/BV1cg4y1s7nf
在编程的世界中,流程控制是程序运行的基础,流程控制主要包括判断和循环。
一、判断
1.1 If - elif - else 判断
- pass 语句
pass 是空语句,是为了保持程序结构的完整性。它用于那些语法上必须要有什么语句,但程序什么也不做的场合。 - if 判断结构
score = 85
if score >= 90:
print('优秀')
elif score >= 80:
print('良好')
elif score >= 70:
print('一般')
else:
print('加油')
输出结果:
良好
1.2 match- case 判断
match - case 是python3.10新增的判断结构,Switch-case 语句存在于很多编程语言中,但 Python 创建30多年始终不支持 Switch-case 语句,现在终于有了。它有特定的应用场景,不如 if 应用广泛。
score = 85
match score:
case 90:
print('优秀')
case 80:
print('良好')
case 70:
print('一般')
case _:
print('加油')
输出结果:
加油
应用场景:HTTP 状态码判断
import random
result = random.sample(['404', '403', '200', '500', '300'], 1)[0]
match result:
case '404':
print('网页不存在')
case '403':
print('禁止访问')
case '200':
print('正常')
case '500':
print('服务器错误')
case _:
print('未知状态')
输出结果:
正常
二、循环
2.1 for 循环
- range()函数返回的一个可迭代对象(类型是对象),一般用在 for 循环中。
语法格式:range(start, stop[, step])。常用格式:range(start, stop),前闭后开,顾头不顾尾
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
for i in range(5):
if i == 2:
continue
if i == 4:
print('循环异常结束!')
break
print(i)
else:
print('循环正常结束!')
print('---------循环体外!')
输出结果:
0
1
3
循环异常结束!
---------循环体外!
2.2 while 循环
i = 0
while i < 5:
i += 1
if i == 8:
print(f'i = {i},跳出循环,异常结束')
break
if i % 2 == 1:
print(f'跳过{i},进入下个循环')
continue
print(i)
else:
print('循环没有被跳出,正常结束。')
print('循环体外,循环结束!')
输出结果:
跳过1,进入下个循环
2
跳过3,进入下个循环
4
跳过5,进入下个循环
循环没有被跳出,正常结束。
循环体外,循环结束!
2.3 循环跳转
- continue:跳转到循环头,开始下次循环
- break:跳出循环体,继续执行下面的代码