无论何时,在编写程序的过程中总会遇到需要在循环内部中止代码执行的情况。Python中的break语句就是为了解决这种情况而生的,它能够快速地终止正在执行的循环,并让代码执行流程跳到循环的后面。
1、基本语法和用法
break是Python中的一种控制语句,一般用在循环语句中,它可以让程序跳出一个循环体,继续执行下面的程序代码。在Python中,break语句的基本语法如下:
while expression:
statement(s)
if condition:
break
statement(s)
当if语句中的条件为真时,程序跳出循环体,执行break之后的代码。
我们来看一个break语句的例子:
# 使用break语句跳出循环
n = 5
while n > 0:
n -= 1
if n == 2:
break
print('当前n的值为:', n)
print('循环结束')
上面的代码使用了while语句来生成一个自然数序列,当n等于2时,使用break语句跳出循环,输出结果如下:
当前n的值为: 4
当前n的值为: 3
循环结束
在上面的例子中,当n等于2时,break语句执行,跳出当前的循环体,不再继续执行代码。
2、break语句应用场景
break语句可以在循环体内随时使用,用来跳出这个循环体。在循环体内部,可以随时检测需要跳出循环的条件,一旦检测到达到条件,就可以使用break语句来跳出循环。
举例来说,当程序在遍历一个列表时,若要在找到指定的元素之后退出循环,可以使用break语句:
# 使用break语句搜索指定元素
my_list = [1, 3, 5, 7, 9]
key = 5
for item in my_list:
if item == key:
print("找到了指定元素")
break
else:
print("当前元素不是指定元素")
print("遍历完毕")
代码运行结果如下:
当前元素不是指定元素
当前元素不是指定元素
找到了指定元素
遍历完毕
在上面的例子中,当程序遍历到列表中的元素5时,使用break语句跳出循环,输出结果“找到了指定元素”。
除了在列表中查找元素时使用break语句,我们还可以在循环的代码块中添加条件语句来限制循环的执行次数,比如以下代码:
# 使用break语句执行指定次数
count = 0
while True:
count += 1
print("执行第", count, "次")
if count == 5:
break
这段代码将不断循环执行,第一次输出“执行第1次”,第二次输出“执行第2次”,以此类推,当执行第5次时,使用break语句跳出循环,输出结果如下:
执行第 1 次
执行第 2 次
执行第 3 次
执行第 4 次
执行第 5 次
3、break语句和else语句的结合使用
除了和循环语句结合使用外,break语句还可以和else语句结合使用,实现类似于Java的中断语句的效果。
在Python中,如果通过break语句使循环正常退出,那么else语句将不会被执行。如果循环因为条件不满足而自然结束(for循环和while循环),那么else语句将会被执行。
下面我们看一个例子:
def find_first_even(numbers):
for item in numbers:
if item % 2 == 0:
print("找到了第一个偶数:", item)
break
else:
print("没有找到偶数")
该函数输入一个整数数组,用for循环查找数组中第一个偶数,如果找到了第一个偶数,则打印出该偶数,否则打印出“没有找到偶数”。
我们使用以下代码测试该函数:
numbers = [1, 3, 5, 7, 9]
find_first_even(numbers)
numbers = [2, 1, 4, 7, 8, 3, 9]
find_first_even(numbers)
输出结果如下:
没有找到偶数
找到了第一个偶数: 2
在第一个例子中,数组中没有偶数,因此输出“没有找到偶数”,在第二个例子中,数组中第一个偶数为2,输出“找到了第一个偶数:2”。
4、小结
在Python中,break语句是一种控制语句,可以让程序在执行循环语句时跳出循环体。
break语句与循环语句、条件语句、else语句结合使用,可以实现许多复杂的程序功能。