python中break、continue 、exit() 、pass终止循环的区别
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.
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例子作一下修改:
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中break、continue 、exit() 、pass终止循环的区别的更多相关文章
- python中break continue exit() pass区别
1.break break是终止本次循环,比如你很多个while循环,你在其中一个while循环里写了一个break,满足条件,只会终止这个while里面的循环,程序会跳到上一层while循环继续往下 ...
- python中生成器对象和return 还有循环的区别
python中生成器对象和return 还有循环的区别 在python中存在这么一个关键字yield,这个关键字在项目中经常被用到,比如我写一个函数不想它只返回一次就结束那我们就不能用return,因 ...
- [转帖]Shell脚本中的break continue exit return
Shell脚本中的break continue exit return 转自:http://www.cnblogs.com/guosj/p/4571239.html break结束并退出循环 cont ...
- python中break和continue的区别
python中break和continue的区别 break和continue 1.break 意思为结束循环 例: i = 0 while i<10: i+=1 if ...
- 关于python中break与continue的区别
在python中break和continue都有跳出循环体的作用,但是他们还是有一些区别的,具体区别如下: break:是直接跳出循环,跳出自己所处的整个循环体 continue:只是跳出本次循环,而 ...
- break , continue , exit
break , continue , exit 例一:#!/bin/bash . /etc/init.d/functions `;do ];then #continue #没有数字3 break #e ...
- break continue exit return 的区别
[root@localhost day1]# cat ss.sh #!/bin/bash for ((i=0;i<5;i++)) do if [ $i -eq 3 ] then break #c ...
- python中urllib, urllib2,urllib3, httplib,httplib2, request的区别
permike原文python中urllib, urllib2,urllib3, httplib,httplib2, request的区别 若只使用python3.X, 下面可以不看了, 记住有个ur ...
- Python中%r和%s的详解及区别_python_脚本之家
Python中%r和%s的详解及区别_python_脚本之家 https://www.jb51.net/article/108589.htm
随机推荐
- 【java报错】CacheLoader returned null for key class
CacheLoader returned null for key class cmd mvn eclipse:clean eclipse:eclipse mvn install -Dmave ...
- MySQL之——server保持与MySQL的连接
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47008019 server程序常常要訪问数据库,而且server程序是长时间保持运 ...
- Linux内核--基于Netfilter的内核级包过滤防火墙实现
测试内核版本:Linux Kernel 2.6.35----Linux Kernel 3.2.1 原创作品,转载请标明http://blog.csdn.net/yming0221/article/de ...
- 什么叫强类型的DATASET
强类型DataSet,是指需要预先定义对应表的各个字段的属性和取值方式的数据集.对于所有这些属性都需要从DataSet, DataTable, DataRow继承,生成相应的用户自定义类.强类型的一个 ...
- sphinx测试数据生成
import json from random import sample, randint from uuid import uuid4 def gen_random_words(): with o ...
- mac中的本地项目和登陆的钥匙串怎么解锁
前提条件:电脑语言换成英语,然后按下面的操作就可以了. 1.打开launchapd中的钥匙串访问 2 选中第一栏登录, 点击左上角的锁锁上, 再点一次解锁. 3. 这回会弹出个东西 点击如上图中的重密 ...
- Codeforces 633H. Fibonacci-ish II
题目大意: 一个数列 q次询问 每次询问l r 将数列中l-r的位置排序去重后的数列成为b 输出 sigma b i * F i (其中F i为斐波那契数列中的第i项) 思路: 由于要去重 考虑权值线 ...
- BZOJ_1670_[Usaco2006 Oct]Building the Moat护城河的挖掘_求凸包
BZOJ_1670_[Usaco2006 Oct]Building the Moat护城河的挖掘_求凸包 Description 为了防止口渴的食蚁兽进入他的农场,Farmer John决定在他的农场 ...
- bzoj 1014 火星人prefix —— splay+hash
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1014 用 splay 维护字符串上不同位置的哈希值还是第一次... 具体就是每个节点作为位置 ...
- 洛谷P1527 矩阵乘法——二维树状数组+整体二分
题目:https://www.luogu.org/problemnew/show/P1527 整体二分,先把所有询问都存下来: 然后二分一个值,小于它的加到二维树状数组的前缀和里,判断一遍所有询问,就 ...