全部学科
Python全栈
python
NodeJS全栈
nodejs
📝 1 篇文章 24 道配套习题

流程控制专题

专题说明

本专题系统讲解Python流程控制的核心知识,包括if-elif-else条件分支语句、for循环遍历与range函数、while循环与条件判断、break/continue/else循环子句、pass占位语句以及条件表达式的用法。

学习目标

  1. 掌握if-elif-else条件分支的语法与嵌套用法
  2. 熟练使用for循环遍历各类数据结构
  3. 理解while循环的条件控制与适用场景
  4. 掌握break、continue和循环else子句的含义
  5. 理解Python独特的循环else子句语义

学习内容

  • 条件分支:if语句、if-else、if-elif-else、嵌套条件、条件表达式(三元运算符)
  • for循环:遍历列表/字符串/字典、range()函数、enumerate()函数、zip()函数
  • while循环:条件判断、无限循环与终止、循环控制
  • 循环控制:break(跳出循环)、continue(跳过本次)、else(正常结束执行)
  • 其他语句:pass占位语句、...(Ellipsis)用法

学习建议

  1. for循环用于遍历已知集合,while循环用于条件驱动的场景
  2. Python的循环else子句与多数语言不同,它是"正常结束"时执行,而非"中断"时执行
  3. 使用enumerate()替代range(len())来同时获取索引和值
  4. 避免在循环中修改正在遍历的列表,应先复制或使用列表推导式

📝 配套习题(24 题)

💡 参考答案在文末
判断题
1

break语句用于完全终止循环,continue语句用于跳过本次循环剩余代码,进入下一次循环迭代。

A

B

2

Python的三元表达式语法是value_if_true if condition else value_if_false,它是if-else语句的简洁写法。

A

B

3

Python中的条件语句使用if-elif-else结构,elif可以出现多次,else只能出现一次且必须放在最后。

A

B

4

Python的for循环可以遍历任何可迭代对象,包括列表、元组、字符串、字典、集合和range对象。

A

B

5

pass语句是Python中的空操作语句,它不做任何事情,主要用于作为语法上的占位符,保证代码结构完整。

A

B

6

Python的for-else结构中,else子句只在循环正常结束(没有被break中断)时执行。

A

B

7

while循环会在条件为True时一直执行,直到条件变为False才停止,因此while循环可能永远不会停止(无限循环)。

A

B

单选题
8

以下哪个代码会报语法错误?

A

if True: pass

B

def func(): pass

C

if True:

D

while True: pass

9

执行以下代码后,输出是什么?

Python
x = 10
if x > 15:
    print('A')
elif x > 5:
    print('B')
elif x > 0:
    print('C')
else:
    print('D')
A

A

B

B

C

C

D

D

10

以下代码的输出是什么?

Python
n = 10
while n > 0:
    n -= 3
    print(n, end=' ')
A

7 4 1 -2

B

7 4 1

C

10 7 4 1

D

10 7 4 1 -2

11

以下代码执行后,变量count的最终值是多少?

Python
count = 0
while count < 5:
    count += 1
print(count)
A

4

B

5

C

6

D

程序无限循环,无最终值

12

以下代码的输出是什么?

Python
for i in range(5):
    if i == 2:
        continue
    print(i, end=' ')
A

0 1 2 3 4

B

0 1 3 4

C

0 1

D

0 1 2

13

执行result = 'A' if 5 > 3 else 'B'后,result的值是:

A

'A'

B

'B'

C

'A'或'B'(不确定)

D

报错

14

以下哪个三元表达式语法正确,能实现"当x大于0返回'正数',否则返回'非正数'"?

A

'正数' if x > 0 else '非正数'

B

if x > 0 then '正数' else '非正数'

C

x > 0 ? '正数' : '非正数'

D

'正数' else '非正数' if x > 0

15

以下代码的输出是什么?

Python
for i in [1, 3, 5, 7]:
    if i % 2 == 0:
        print('找到偶数')
        break
else:
    print('没有偶数')
A

找到偶数

B

没有偶数

C

找到偶数 没有偶数

D

无输出

16

for i in range(2, 6)循环中,变量i依次取值为:

A

2, 3, 4, 5, 6

B

2, 3, 4, 5

C

0, 1, 2, 3, 4, 5

D

0, 2, 4, 6

17

以下代码执行后,else子句是否会执行?

Python
nums = [2, 4, 6]
for n in nums:
    if n == 4:
        break
else:
    print('else执行了')
A

会执行,输出"else执行了"

B

不会执行,因为循环被break中断

C

会执行,因为n=4时循环还在进行

D

不会执行,因为nums是空列表

填空题
18

循环的else子句只有在循环____________时才执行,如果循环被____________语句中断,else子句____________执行。循环else子句常用于判断是否找到目标元素或是否遍历完成。

19

Python条件语句以____________关键字开始,用于判断多个条件时使用____________关键字,当所有条件都不满足时执行____________分支。每个条件后面需要使用冒号,语句块需要缩进。

20

pass语句是____________语句,不做任何事情,主要用于作为____________。在定义空函数、空类或暂时未实现的____________时,使用pass可以避免语法错误。

21

while循环适合处理____________的迭代场景,如用户输入验证、游戏主循环等。使用while True可以创建____________,通常需要配合____________语句退出。循环条件在每次执行循环体之前判断。

22

遍历字典的所有键使用for key in dict,遍历所有值使用for value in dict.____________(),遍历所有键值对使用for key, value in dict.____________()。range(5)生成____________的整数序列。

23

Python三元表达式的语法结构是:____________ ____________ ____________ else 假值。例如'成年' if age >= 18 else '未成年',当age>=18时返回成年,否则返回未成年。

24

____________语句用于立即终止整个循环,跳出循环体;____________语句用于跳过本次循环的剩余代码,继续下一次迭代。break通常用于找到目标后____________循环,continue通常用于跳过不符合条件的元素。

参考答案
1.正确 2.正确 3.正确 4.正确 5.正确 6.正确 7.正确 8.C 9.B 10.A 11.B 12.B 13.A 14.A 15.B 16.B 17.B 18.正常结束;break;不会 19.if;elif;else 20.空操作;占位符;语句块 21.不确定次数;无限循环;break 22.values;items;0到4 23.真值;if;条件 24.break;continue;提前退出
想在手机上练习这套专题?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一个专题 正则表达式专题
下一个专题 → 测试与调试专题
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码