问:请解释一下Python 中的 pass 语句、continue、break有什么作用?并辅以代码说明

答:

1.pass :pass是空语句,是为了保持程序结构的完整性。通常用于不知道接下来代码应该写什么,而采用的辅助性代码,保证代码的完整性而不会报错。

if a > b:
pass
else:
pass
# 当我们有了大概的思路,可以用pass来做占位符

2.break

(1)用于 while 和 for 循环中

(2)用于完全结束一个循环,跳出循环体

不管是哪种循环,一旦在循环体中遇到 break,系统就将完全结束该循环,开始执行循环之后的代码;

对于带 else 块的循环,如果使用 break 强行中止循环,程序将不会执行 else 块;

for i in range(0, 10):
if i == 2: # 执行该语句时将结束循环
break
print("i的值是: ", i)
else:
print('else块: ', i) # i 等于 2 时跳出循环,而且此时 for 循环不会执行 else 块

运行结果:

i的值是:  0
i的值是: 1

(3)如果用于嵌套循环中,break语句将停止执行最深层的循环,并开始执行下一行代码。

# 外层循环
for i in range(0, 5):
# 内层循环
for j in range(0, 3):
if j == 2:
# 当j等于2时跳出内层循环
break
print("i的值为: %d, j的值为: %d" % (i, j))

运行结果:

i的值为: 0, j的值为: 0
i的值为: 0, j的值为: 1
i的值为: 1, j的值为: 0
i的值为: 1, j的值为: 1
i的值为: 2, j的值为: 0
i的值为: 2, j的值为: 1
i的值为: 3, j的值为: 0
i的值为: 3, j的值为: 1
i的值为: 4, j的值为: 0
i的值为: 4, j的值为: 1

3.continue

(1)用于 while 和 for 循环中

(2)用于跳过当前循环的剩余语句,然后继续进行下一轮循环

for i in range(0, 3):
print("i 的值是: ", i)
if i == 1:
# 当 i 等于1时,忽略本次循环的剩下语句
continue
print("continue后的输出语句")

运行结果:

i的值是:  0
continue后的输出语句
i的值是: 1
i的值是: 2
continue后的输出语句

Python【每日一问】05的更多相关文章

  1. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  2. python每日一函数 - divmod数字处理函数

    python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...

  3. Python全栈day 05

    Python全栈day 05 一.数据类型补充 1. int py2和py3的2种区别 py2有int和long,int的取值范围为-2^31~2^31-1,超出范围自动转为long,长整型. py2 ...

  4. 每日一问:Android 消息机制,我有必要再讲一次!

    坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...

  5. 每日一问:谈谈 volatile 关键字

    这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...

  6. 每日一问:讲讲 Java 虚拟机的垃圾回收

    昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...

  7. 每日一问:你了解 Java 虚拟机结构么?

    对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...

  8. 每日一问:LayoutParams 你知道多少?

    前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...

  9. 每日一问:简述 View 的绘制流程

    Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...

  10. python每日一练:0007题

    第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...

随机推荐

  1. [hdu P3085] Nightmare Ⅱ

    [hdu P3085] Nightmare Ⅱ Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...

  2. Java实现类似eval()函数或exec()函数的功能

    一篇参考博客:http://www.cnblogs.com/fangwenyu/archive/2011/10/12/2209051.html 在Python中有一个exec()函数,同样在JavaS ...

  3. php7 数据导出Excel office 2011中文乱码问题

    public function test(){ $data = array( array( 'name' => '对对对', 'score' => 80, 'grade' => '急 ...

  4. mariadb安装和一些sql基础

    MariaDB安装    yum -y install mariadb mariadb-server 启动    systemctl start mariadb     systemctl enabl ...

  5. be动词的形式和用法

    Be动词的形式: be, is, am, are, was, were, being, been 1.The man is back 2.They are back 3.He was back 4.T ...

  6. HTML5:定位

    定位 一.介绍: position设置块级元素相对于其父块的位置和相对于它自身应该在的位置,任何使用定位的元素都会成为块级元素. 1.属性值 属性值 描述 absolute 生成绝对定位的元素,相对于 ...

  7. 复现 360 Unicorn Team 黑科技之 HackNFC

    看了2条360 Unicorn Team的微博后,感觉蛮有趣的,打算复现一下 谷歌了下相关资料,在HACKADAY找到了介绍文章 还有2篇北邮工学硕士的论文,欢迎有兴趣的朋友和我一起交流~ 联系方式在 ...

  8. C# 实现CRC16校验

    前言 本文将使用一个NuGet公开的组件技术来实现CRC16校验功能,提供了一些简单的API,来方便的实现. 在Visual Studio 中的NuGet管理器中可以下载安装,也可以直接在NuGet控 ...

  9. Power BI中DAX的动态计算方差

    我花了一点时间试图解决一个棘手的DAX表达式,那就是如何动态计算方差,下面我们认识一下这两个函数: PARALLELPERIOD  和 SAMEPERIODLASTYEAR  它能实现我们想要的结果, ...

  10. Ubuntu安装lrzsz

    本文主要介绍在Ubuntu下安装lrzsz工具,方便windows和linux间的文件上传下载 方法1:二进制包自动安装1.1 在终端中,输入命令,自动安装,简单方便: sudo apt-get in ...