Python | While循环控制语句

掌握while循环的结构以及循环中的常用关键字。

一、While循环控制语句

● Python编程中while语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

while 判断条件:

执行语句块

pass

while 循环条件:

二、 While循环工作原理

● 从一个列表中分别筛选出奇数和偶数,并分别放到不同的列表中。

while循环工作原理演示:

Code说明 :

 ●列表 numbers[] 存放6个整形数据

● 列表 even[] 存放挑选出来的偶数

● 列表 odd[] 存放挑选出来的奇数

● [行 4]:循环条件为: 列表numbers中的元素个数大于0

● [行 5]:在循环体中使用 numbers.pop( ) 函数的作用是从原 有的numbers[]列表中取出一个元素并赋值给number变量

● [行 6~7]:使用if条件判断当前取出的数字是否能被2整除, 若是将取出的数字使用.append()方法添加到列表even[]中

● [行 8~9]:若不满足if判断条件,则将取出的数字添加到odd[] 列表中

示例:使用while循环输出数字0~9

首先,问自己三个问题:

● 问题1 :需要重复执行什么?

● 问题2 :重复执行的条件是什么?

● 问题3 :如何结束重复操作?

流程实现:

● 首先,创建循环变量num ,同时该变量也是程序的操作变量。

● 其次,确定循环条件,根据要求只要num小于等于9就可以输出。

● 再次,确定循环体需要重复执行输出num的语句

● 最后,在循环体中一定要体现修改循环变量的值 num 自加1 (趋于不满足条件方向)

Step1 :流程分析并绘制流程图

三、循环关键字break和continue

●while循环语句时还有另外两个重要的关键字continue和break来跳过循环,该关键字出现在循环体当中,用来改变程序流。

●break 用于终止并退出循环,执行循环语句块之后的代码。

●continue 用于终止当前正在执行的循环,程序流回到循环条件判断,进行下一次循环。

四、循环使用while..else语句

在python中, while ... else在循环条件为false时执行else语句块:

实例代码:

ch04-demo08-wihleelse.py

运行结果:

五、无限循环

● 当while循环条件为永真值时或循环变量趋向于不满足循环条件发展时,则出现永无休止的执行循环体,我们称之为无限循环。

无限循环可能出现的情况:

while 1==1:

执行语句块

pass

while True:

执行语句块

pass

a = 0

while a <5:

执行语句块

a = a - 1

pass

▲ 在某些场景中,我们恰恰需要无限循环这种情况(比如 菜单操作等)。

注意:当程序出现无限循环情况,若要终止程序u运行可以使用快捷键 Ctrl+C

六、断点调试

● 在程序开发过程中,我们经常要进行开发测试,以保障我们提交的程序正确性。

● 断点调试技术是在编写程序中很重要的一种开发测试技术。

步骤:

添加断点:选中某行,在左侧靠近行数处点击(再次点击取消断点)

调试断点:右键"debug xxxx" 或Shift+F9

观察运行到断点时各变量值

说明:

● step into:单步执行,遇到子函数就进入并且继续单步执行(简而言之,进入子函数);

● step into my code: 单步执行时,忽略源代码

● step over:在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,

● step out:当单步执行到子函数内时,用step out就可以执行完子函数余下部分,并返回到上一层函数。

七、iterator迭代器

● 迭代是Python最强大的功能之一, 是访问集合元素的一种方式。

● 迭代器是- -个可以记住遍历的位置的对象。

● 迭代器对象从集合的第一个元素开始访问 ,直到所有的元素被访问完结束。迭代器只能往前不会后退。

● 迭代器有两个基本的方法: iter()和next()。

● 字符串,列表、元组和字典对象都可用于创建相应的迭代器。

代码演示:

>>> list1 = list(range(2)) # 创建一个列表

>>> listIter = iter(list1) # 创建一个列表迭代器

>>> next(listIter) # 输出第1个元素

0

>>> next(listIter)

1

说明:若next()调用超出显示范围则抛出异常: StopIteration

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

推荐阅读更多精彩内容