跟我读python3文档:014_流程控制语句(4. More Control Flow Tools)下

贯穿始终的理念:别废话,就是干!


往期回顾

  • 分片
  • 索引
  • 对象
  • for语句
  • if语句
  • range( )函数的返回值,以及三个参数

文档解读

python3文档第四小节链接地址:4. More Control Flow Tools

本章主要讲解4.4. break and continue Statements, and else Clauses on Loops(break和continue语句,以及循环中的else子句)4.5. pass Statements(pass语句)这两个小节


在讲解4.4小节之前,先差一段while循环语句。

前几期我们学了for循环,知道他的作用主要是遍历可迭代对象。那有没有比较纯粹的循环呢?
答案就是while语句。
我们直接来看代码理解while语句:

>>> a = 1                #赋值
>>> while a < 5:         #条件判断 
···    print(a)
···    a = a + 1
···
1                         #从这开始是输入结果
2
3
4

那么我们来分析下while语句的基本结构:

  1. while关键字
  2. 判断条件 #这里是a < 5
  3. 分号
  4. 缩进

我们先来说下while语句的执行顺序。
其实他和for语句差不多,都是重复执行缩进语句的内容。

首先看判断条件是否符合要求,如果符合,就执行缩进语句;缩进语句执行完毕之后,再去看判断条件(注意,判断条件里的a值在缩进语句中已经发生了改变,a增加了1。),如果依旧符合就再执行缩进语句,如此往复,直到不符合为止,退出while循环,执行之后的语句。

其实对于流程控制语句来说,判断条件的结果是最重要的。这要求构成判断条件的表达式必须有明确的返回值。
比如a<5,初始a=1,a<5成立,返回值为True;a不断累加,直到a=5时,a<5不成立,返回值为False。
注:如果不知道判断条件会返回什么值,可以自己试着在python解释器里输入看看。

>>> c = 1 > 2
>>> c
False

流程控制语句通过这个返回值来判断如何执行之后的语句。判断的结果被称为或者。如果是,就执行流程控制语句块内的语句,之后再去判断返回值真假;如果是,就跳过流程控制语句块,执行之后的语句。

真假是如何判定的呢?

判断返回值真假的这一步被称为真值测试(Truth Value Testing)
真值测试会把返回值归为两类:True或者False。
可以参考文档:《Built-in Types》的内容。
由于值数量有限,所以我们只要记住有哪些返回值会被归为值(False)就可以了,其他的全部是真值。
常见值如下,最好背下来,以后会经常用到:

  1. None
  2. False
  3. 任何数值类型的零,例如,0,0.0,0j
  4. 任何空值,例如,",(),[],set(), range(0)
    注意:''' ' 是不一样的。一个是空字符串;一个是空格字符串。我们上面说的空值是''这个,不是' '这个。

while语句就讲这么多。
自己试着在python解释器里(以后我们称为python交互环境)输入代码看看结果。试着改改上面的代码,比如改改判断条件。


4.4. break and continue Statements, and else Clauses on Loops

4.4小节就讲了三个关键字。

  1. break
  2. continue
  3. else

else已经见过了,和if语句搭配着用的。
我们关键来看break和continue。


break

段落截取(一)

breaks out of the innermost enclosing for or while loop.

名词解释

loop 循环

段落大意

终止循环
我们还是直接上代码来看break的具体作用。

>>> a = 1
>>> while a < 10:        #注意分号
...     a = a + 1
...     if a == 5:       #注意缩进
...         break        #注意这里的缩进。
...     print(a)
... 
2                         #从这里开始是输出结果
3
4

能理解了吗?break语句直接终止了循环。


continue

终止当前步骤,直接进入下一次循环。
我们也是直接上代码,请和break对比着看。

>>> a = 1
>>> while a < 10:        #注意分号
...     a = a + 1
...     if a == 5:       #注意缩进
...         continue     #注意这里的缩进。
...     print(a)
...                  
2                        #从这里开始是输出结果
3
4                 
6                        #注意到了吗?没有5。
7
8
9

通过对比,能看明白他们的作用与区别吗?
如果看不懂,试着自己去读程序的执行顺序,多读几遍,其义自见。


4.5. pass Statements

中文意思:过!
就是字面的那个意思。
就像大型选秀节目,上来一个选手,pass;再上来一个,pass。。。。pass。
pass语句简单到基本上没啥可说的。。。
你可以理解为他就是用来充数的。。。
我们直接看例子:

>>> while True:
...     pass  
...

虽然程序一直在运行,但是什么也没有发生。。
思考题: 还记得如何终止正在运行的程序吗?
提示:快捷键。


今天就到这里。
好好理解下break和continue的区别~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,634评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,951评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,427评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,770评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,835评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,799评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,768评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,544评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,979评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,271评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,427评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,121评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,756评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,375评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,579评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,410评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,315评论 2 352

推荐阅读更多精彩内容