python中break、continue 、exit() 、pass终止循环的区别详解

yipeiwu_com5年前Python基础

python中break、continue 、exit() 、pass区分

1、break:跳出循环,不再执行

  • Python break语句,就像在C语言中,打破了最小封闭for或while循环。
  • break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
  • break语句用在while和for循环中。
  • 如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

例1: break跳出while死循环

```python
while True:
print("123")
break
print("456")
###例2: break是终止本次循环,比如你很多个for循环,你在其中一个for循环里写了一个break,满足条件,只会终止这个for里面的循环,程序会跳到上一层for循环继续往下走
>```python
for i in range(5):
  print("-----%d-----" %i)
  for j in range(5):
    if j > 4:
      break
    print(j)

这里遇到j>5的时候第二层的for就不循环了,继续跳到上一层循环

$ py break.py
-----0-----
0
1
2
3
-----1-----
0
1
2
3
-----2-----
0
1
2
3
-----3-----
0
1
2
3

2、continue:跳出本次循环,执行下一次

  • Python continue 语句跳出本次循环,而break跳出整个循环。
  • continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。
  • continue语句用在while和for循环中。

例1:continue通过if判断触发,跳出当前一层for循环,终止'h'输出,继续下一次for.

```python
 for letter in 'Python':
 if letter == 'h':
 continue #此处跳出for枚举'h'的那一次循环
print('当前字母 :', letter)

#输出结果中果然无'h'
$ py continue.py
当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : o
当前字母 : n
##例2:
>```python
var = 5          
while var > 0:       
  var = var -1
  if var == 3:
   continue
  print('当前变量值 :', var)
print("Good bye!")
$ py continue.py
当前变量值 : 4
当前变量值 : 2
当前变量值 : 1
当前变量值 : 0
Good bye!```


###如果continue换成break
>```python
var = 5          
while var > 0:       
  var = var -1
  if var == 3:
   break
  print('当前变量值 :', var)
print("Good bye!")
$ py continue.py
当前变量值 : 4
Good bye!

例3:continue是循环到这个点的时候,执行continue这里的某些操作,执行完了之后,继续执行满足条件的这一层循环需要做的事情,不会终止这一层循环(只会跳出这一次).上面的break例子作一下修改:

```python
 for i in range(10):
 print("-----%d-----" %i)
 for j in range(10):
 if j > 5 and j <= 8:
 print("我是continue特殊")
continue
 print(j)

这里的循环就会打印出j在5-8之间需要做的事情,但是不会终止第二层循环,不满足5-8之间的数字,会接着循环下面需要做的事情

#3、exit():结束整个程序
>```python
for element in "Python": 
   if element == "t": 
     exit() 
   else:
   print(element) 

4、pass:不做任何事情,只起到占位的作用

for element in "Python": 
   if element == "y": 
     pass 
   else: 
     print(element)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现

相信很多人像我一样在学习python,pandas过程中对数据的选取和修改有很大的困惑(也许是深受Matlab)的影响。。。 到今天终于完全搞清楚了!!! 先手工生出一个数据框吧 i...

详解如何用OpenCV + Python 实现人脸识别

详解如何用OpenCV + Python 实现人脸识别

下午的时候,配好了OpenCV的Python环境,OpenCV的Python环境搭建。于是迫不及待的想体验一下opencv的人脸识别,如下文。 必备知识 Haar-like 通俗的来讲,...

Python 确定多项式拟合/回归的阶数实例

Python 确定多项式拟合/回归的阶数实例

通过 1至10 阶来拟合对比 均方误差及R评分,可以确定最优的“最大阶数”。 import numpy as np import matplotlib.pyplot as plt f...

django连接mysql数据库及建表操作实例详解

django连接mysql数据库及建表操作实例详解

本文实例讲述了django连接mysql数据库及建表操作。分享给大家供大家参考,具体如下: django连接mysql数据库需要在project同名的目录下面的__init__.py里面...

Django框架实现的分页demo示例

Django框架实现的分页demo示例

本文实例讲述了Django框架实现的分页。分享给大家供大家参考,具体如下: 首先初始化model,建表 class Book(models.Model): name = mode...