Skip to content

跳转语句

跳转语句用于(突然地)改变执行流程。

Python 中可用的一些跳转语句是:

pass

pass 语句充当占位符,执行空操作(无操作)。

使用关键字 pass 的各种原因如下:

1. 语法要求

在 Python 解释器可能因缺少语句而引发 SyntaxError 的情况下,使用 pass 成为语法要求。

下面的代码将在循环中成功执行而没有任何操作

python
for i in range(6):
    pass

而没有 pass

python
for i in range(6):

将抛出以下 SyntaxError

File "<ipython-input-18-f2ba5099d499>", line 1
    for i in range(6):
                    ^
SyntaxError: unexpected EOF while parsing

类似地,在 if 语句内部

python
if 2 < 3:
    pass

而没有 pass

python
if 2 < 3:

将抛出以下 SyntaxError

File "<ipython-input-20-068861cce0a8>", line 1
    if 2 < 3:
            ^
SyntaxError: unexpected EOF while parsing

2. 跳过代码执行

pass 可用于在某些情况下跳过代码执行。

例如,

代码

python
l = [2, 3, 4, 5, 6]
for i in l:
    if i%3 == 0:
        pass
    else:
        print(i, "不能被 3 整除")

输出

2 不能被 3 整除
4 不能被 3 整除
5 不能被 3 整除

3. 占位符

pass 可用于创建有效的空函数和类作为占位符,这些占位符可以在代码的未来版本中进行修改。

python
def emptyFunction():
    pass

class EmptyClass:
    pass

break

break 语句用于终止直接包含它的 forwhile 语句的执行。

下面的代码将在 i 等于 4 时终止 for 循环

python
for i in range(10):
    print(i)
    if i == 4:
        break
0
1
2
3
4

在 while 语句中,

python
i = 0
while i < 10:
    print(i)
    if i == 4:
        break
    i+=1

i 等于 4 时,break 将终止 while 循环

0
1
2
3
4

continue

continue 语句用于跳过后续语句的执行并开始下一次迭代。

下面的代码将跳过所有工作经验少于 4 年的面试候选人。

python
people =  [{"name": "ABC", "experience": 6},
           {"name": "EFG", "experience": 2},
           {"name": "JKL", "experience": 5},
           {"name": "XYZ", "experience": 3},]
for candidate in people:
    if candidate["experience"]<4:
        continue
    print(candidate["name"], "被选中参加面试")

输出:

ABC 被选中参加面试
JKL 被选中参加面试