《Python语言》课件 第3章 流程控制.pdf

您所在的位置:网站首页 python教学课件 《Python语言》课件 第3章 流程控制.pdf

《Python语言》课件 第3章 流程控制.pdf

2023-03-23 00:51| 来源: 网络整理| 查看: 265

《《Python语言》课件 第3章 流程控制.pdf》由会员分享,可在线阅读,更多相关《《Python语言》课件 第3章 流程控制.pdf(44页珍藏版)》请在咨信网上搜索。

1、Python语言大数据应用人才培养系列教材第三章流程控制3.1 条件语句3.2 条件流程控制3.3 循环流程控制3.4 实验3.5 小结习题3.1条件语句第三章流程控制流程控制是指在程序运行时,对指令运行顺序的控制。通常,程序流程结构分为三种:顺序结构、分支结构和循环结构。顺序结构是程 序中最常见的流程结构,按照程序中语句的先后顺序,自上而下依次执行,称为顺序 结构;分支结构则根据计条件的真假(True或者False)来决定要执行的代码;循环结 构则是重复执行相同的代码,直到整个循环完成或者使用break强制跳出循环。Python语言中,一般来说,我们使用ifi吾句实现分支结构,用for和wh

2、ile语句实现 循环结构。3.1条件语句第三章流程控制流程图,是使用图形来表示流程控制的一种方法,是一种传统的算法表示方法,用特定的图形符号和文字对流程和算法加以说明,叫做算法的图,也称为流程图。俗 话说千言万语不如一张图。流程图有它自己的规范,按照这样的规范所画出的流程图,便于技术人员之间的 交流,也是软件项目开发所必备的基本组成部分,因此画流程图也应是开发者的基本 功。符号 说明-圆角矩形用来表示开始与结束。矩形用来表不要执行的动作或算法。O菱形用来表示问题判断。一平仃四边形用来表小率刖入率刖出。-箭头用来代表工作流方向。3.1条件语句第三章流程控制顺序结构是程序中最常见的流程结构,按照程

3、序中语句的先后顺序,自上而下依 次执行,称为顺序结构;b=3print(a+b)Run:,顿孱科D:PythonPython36python.exe F:/py-5II回Process finished with exit code 03.1条件语句第三章流程控制条件语句是用来判断给定的条件是否满足,并根据判断的结果(True或False)决 定是否执行或如何执行后续流程的语句,它使代码的执行顺序有了更多选择,以 实现更多的功能。一般来说,条件表达式是由条件运算符和相应的数据所构成的,在Python中,所 有合法的表达式都可以作为条件表达式。条件表达式的值只要不是False、0、空值(None

4、)、空列表、空集合、空元组、空字符串等,其它均为True。大数据应用人才培养系列教材第三章流程控制3.1 条件语句3.2 条件流程控制3.3 循环流程控制3.4 实验3.5 小结习题3.2条件流程控制第三章流程控制f语句是由计发起的一个条件语句,在满足此条件后执行相应内容,Python的语句 基本结构如下。if表达式1:语句块1elif表达式2:语句块2TrueTrueelse:语句块n图3.1分支选择结构3.2条件流程控制第三章流程控制这里的elif,为else if的缩写,同时需要注意的是:1、else,elif为计语句的子语句块,不能独立使用。2、每个条件后面要使用冒号:表示满足条件后需

5、要执行的语句块,后面几种 其它形式的选择结构和循环结构中是冒号也是必须要有的。3、使用缩进来划分语句块,相同缩进数的语句组成一个语句块。4、在Python中没有sw计ch.case语句。3.2条件流程控制第三章流程控制单向分支选择结构是最简单的一种形式,不包含e肝和else,当表达式值为True时,执行语句块,否则该语句块不执行,继续执行后面的代码。其语法如下。if表达式:语句块1演断变量a的值是否为True,是则执行a=0,否则直接输出a的值。a=1if a:#等价于a=0print(a)#如果工/条件的值为Fa Ise则输出结果为】if aRun:demo03 02 01D:PythonP

6、ython36python.exe F:/python/new/demo03_02_01.py 03Process finished with exit code 0图3.2单分支选择结构3.2条件流程控制第三章流程控制双分支语句是由计和else两部分组成,当表达式的值为True时,执行语句块1否则 执行语句块2。双分支选择结构的语法如下。if表达式:语句块1else:语句块2图3.3双分支选择结构3.2条件流程控制第三章流程控制例如判断条件表达式的值是否为True,是则执行语句块1,否则执行else部分,最 后再输出a的值。1 演断a的值是否为True,是则执行语句块,否则执行else部分,

7、最后再输出a的值。a=5 if a 0:a=10 print(a+1)#如果i向条件为True,就输出】else:a=15 print(a+2)#如果工僚)条件为尸a Ise,就输出二pr int(a)if a=1)and(money 5)and(money=10):#判断money是否在6到 10之间6 print(你可以吃面条”)elif money 5)and(money if a%3=0Run:demo03_02_04D:PythonPython36python.exe F:/python/new/demo03_02_04.py 请输入一个正整数:666目 6663Process f

8、inished with exit code 0大数据应用人才培养系列教材第三章流程控制3.1 条件语句3.2 条件流程控制3.3 循环流程控制3.4 实验3.5 小结 习题3.3循环流程控制第三章流程控制循环,是我们生活中常见的,比如每天都要吃饭、上课、睡觉等,这就是典型的 循环。循环结构是指在程序中需要反复执行某个功能而设置的一种程序结构。Python提供for和while两种循环语句。for语句,用来遍历序列对象内的元素,通 常用在已知的循环次数;while语句,提供了编写通用循环的方法。3.3循环流程控制第三章流程控制for循环的语法结构跟前面讲的有点类似,记的时候不要记混淆了。for

9、执行 时,依次将可迭代对象中的值赋给变量,变量每赋值一次,则执行一次循环体。循环 执行结束时,如果有else部分,则执行对应的语句块。else只有在循环正常结束时执行。如果使用break跳出循环,则不会执行else部分,目根据实际编程需求,else部分可以 省略。其结构如下。for变量in序列或迭代对象:循环体(语句块1)else:语句块2注意:for和else后面冒号不能丢,循环体、语句块缩进严格对齐。3.3循环流程控制第三章流程控制例如求1100的累加和,range。函数是生成1到100的整数,Sum是累 加的和。131 Sum=0for s in ranged,101):#循环从1到10

10、0,当101时就退出循环 5Sum+=s#求1到i仞的累加和print(Sum)例如删除列表对象中所有偶数。珊除列表对象中所有偶数。x=list(range(20)#创建列表对象for i in x:#从媚环到19x.removed)#删除列表对象中下标为i的值else:print(delete over*):foi循环正常执行完成后,执行的else部分 print(x)3.3循环流程控制第三章流程控制for循环嵌套是指在f。彳盾环里有一个或多个for语句,循环里面再嵌套一重循环的叫 双重循环,嵌套两层以上的叫多重循环。例如使用两个for循环打印出九九乘法表,使用for循环和range。函数,

11、变量i控制外层循环,变量j是控制内层循环的次数。1|一打印九九乘法表Hf or i in range(1,10):#外循环循环比for j in ranged,i+1):#内循环控制每行输出的个数print(str(j)+x+str(i)+=+str(i*j),end=)#把数值类型转换成字符型然后进行输出5 El#print C%dx%d=%2d,%(j,i,j*i),end=,)#使用转义字符进行输出print()#换行for i in range(1,10)for j in range(1,i+1)Run:demoOS 03 03D:PythonPython36 python.exe F

12、:/python/new/demo03_03_03.py 1x1=12x2=41x3=32x3=6 3x3=91x4=42x4=8 3x4=12 4x4=161x5=52x5=103x5=15 4x5=205x5=251x6=62x6=123x6=184x6=245x6=306 x6=36X俞2x7=143x7=214x7=285x7=356 x7=427x7=491x8=82x8=163x8=244x8=325x8=406 x8=487x8=56 8x8=6 41x9=92x9=183x9=27 4x9=365x9=456 x9=547x9=6 3 8x9=72 9x9=81Process

13、finished with exit code 03.3循环流程控制第三章流程控制例如求 1!+2!+3!+4!+.+10!的和1 I#求1!+2!+3!+4+,+10!的和2 Sum=03 F for i in range(1,11):#外循环完成累加4 m=1#阶乘初始化为15 for j in ranged,i+1):#内循环完成”的计算6 m*=j#朗j的阶乘7 Sum+=m#累加print(Sum)for i in range。,11)Run:demo03_03_04D:PythonPython36python.exe F:/python/new/demo03_03_04.py 40

14、379133.3循环流程控制第三章流程控制break语句,它的作用是跳出循环或叫终止循环,执行循环后面的语句。continue 语句是结束本次循环(循环体中continue后面的语句不执行),进入下一次循环。例如循环条件为True,当i等于7的时候强制跳出循环。1#循环条件为True,当工等于向时候强制跳出循环。i=1while True:if i=7:breakpr int(i,end=#循环条件永远为True#判断变量工的值是否等于7#如果变量工等于僦跳出循环)89i+=1else:print(yes)Run:demo03_03_05D:PythonPython36python.exe F

15、:/python/new/demo03_03_05.py1 2 3 4 5 6Process finished with exit code 03.3循环流程控制第三章流程控制例如把5080的不能被3整除的数输出。#把50、80的不能被灌除的数输出for i in range(50,80):#从50循环到9if i%3=0:#如果能被灌除就不输出continuepr int(i,end=,)Run:demo03 03 06D:PythonPython36python.exe F:/python/new/demo03_03_06.py 50 52 53 55 56 58 59 61 62 64

16、65 67 68 70 71 73 74 76 77 79Process finished with exit code 03.3循环流程控制第三章流程控制在循环体中可以包含另一个循环或分支语句,在分支语句中也可以包含另一个分 支或循环。例如将小写字母转换成大写字母,大写字母转换成小写字母,注意代码缩进。1 I#将小写字母转换成大写字母,大写字母转换成小写字母X=input(请输入字母:”)for i in range(len(x):if(xi=a)and(xi=*A*)and pr int(chr(ord(xi)-32),(xi+32),一):end=*)=Z):end=,)#判断是否为小写

17、字母#首先将字符转换成TSC2匹马进行计算,然后再将ASCI为马转换成字符#判断是否为大写字母if xLi=:#如果遇到空格,原样输出print(end=else:pr int(,nover!,)demo03 03 07D:PythonPython36python.exe F:/python/new/demo03_03_07.py 请输入字母:Hello worldHELLO WORLDover:Process finished with exit code 03.3循环流程控制第三章流程控制当不知道循环次数,但知道循环条件时,一般使用while语句。与for循环类似,可 在循环体中使用bre

18、ak和continue语句。else部分可以省略。注意:在Python中没有do.while语句。其语法结构如下。while循环条件:循环体(语句块1)else:语句块23.3循环流程控制第三章流程控制例如使用双重while循环打印出一个倒三角形图案。1 I#打印出一个倒三角形的图案i=0while i i:#内循环从弱到变量iprint C o,end=,)7 a j-=i#控制内循环print 0i+=1#控制外循环Run:demo03 03 08D:PythonPython36python.exe F:/python/new/demo03_03_08.pyo o ra后而Xo o3.3循

19、环流程控制第三章流程控制例如求50以内所有5的倍数的和。1 I#求50以内所有迎倍数的和i=1 Sum=0-while i=50:#从1循环到505 中 if i%5=0:#判断变量n是否能被理除Sum+=ipr int(i,end=,)8 i+=1#循环控制变量9 else:#循环正常结束,就执行else部分pr int(nover)pr int(Sum)Run:demo03_03_09 D:PythonPython36python.exe F:/python/new/demo03_03_09.py5 10 15 20 25 30 35 40 45 50 over275大数据应用人才培养系列

20、教材第三章流程控制3.1 条件语句3.2 条件流程控制3.3 循环流程控制3.4 实验3.5 小结 习题3.4实验第三章流程控制1、从键盘输入三个同学的成绩,然后找出最高分。1 I#输入三个同学的成绩数,找出最高分2 stl=float(input(请输入第一位同学的成绩:”)3 st2=float(input(请输入第二位同学的成绩,”)4 st3=float(input(请输入第三位同学的成绩:)5 Max=stl#假设第一个为最高分6 if Max st2:#如果第一个数小于第十个数,最大的数就变成第二个 Max=st28 if Max st3:#把前面两个最大的数和第三个比 Max=s

21、t3print(Max)Run:demo03_04_01 D:PythonPython36python.exe F:/python/new/demo03_04_01.py 请输入第一位同学的成绩:75目 请输入第二位同学的成绩:90g 3 请输入第三位同学的成绩:88每 90.03.4实验第三章流程控制2、输入三个同学的成绩,然后大到小排列。#输入三个同学的成绩,然后大到小排列 iostl=float(input(请输入第一位同学的成绩:)H st2=float(input(请输入第二位同学的成绩:”)4 st3=float(input(请输入第三位同学的成绩:)if stl st2:#第一个

22、和第二个进行比较 14tmp=stlstl=st2st2=tmp#交换两个数的值if stl st3:#第一个和第三个进行比较1皿=stlstl=st3st3=tn?Dif st2 st3:#第二个和第三个进行比较tiqD=st2st2=st3st3=tmpprint(stl,st2,st3)甥IB客施“甥解Xdemo03_04_02D:PythonPy thon36python.exe F:/python/new/demo03_04_02.py请输入第一位同学的成绩:78请输入第二位同学的成绩:66请输入第三位同学的成绩:8080.0 78.0 66.0Process finished wi

23、th exit code 03.4实验第三章流程控制1、求出1000以内的所有完数,如6=1+2+3除了它自身以外的因子之和等于它本 身叫完数。1 1#求出。以内的所有完数,如6二+2+滁了它自身以外的因子之和等于它本身的叫完数。2 F for i in range(1,1000):#外循环从1到 999Sum=04 中 for j in ranged,i):#内循判断这个数是不是完数5 if i%j=0:#求出它的所有因数6 Sum+=j#把求出来的因数相加7 if Sum=i:#判断它的因子之和是否等于它本身pr int(i,end=)Run:demo03_04_03D:PythonPyt

24、hon36python.exe F:/python/new/demo03_04_03.py,6 28 496m Process finished with exit code 03.4实验第三章流程控制2、用循环语句求1+22+333+4444+55555的和。1|#用循环语句 求1+22+333+4444+5555瑞和。2 Sum=1#直接把放到总和里面3 F for i in range(2,6):#外层循环运行欷4 x=1#控制最高位的数for j in range(1,i+1):6 x=x*10+i#如22=2*10+2,加的变量工就是个位的数Sum+=x8 pr int(1+22+3

25、33+.+55555的和为:%d%Sum)Run:demo03_04_04D:PythonPython36python.exe F:/python/new/demo03_04_04.py 1+22+333+.+55555的和为:603555II n 3 Process finished with exit code 03.4实验第三章流程控制1、求出2000-2100的所有闰年,条件是能同时被4和100整除,或者能被400整除的是闰年。1#求出2000-力。助所有闰年,条件是能同时被痂110嚏除,或者能被40灌除的是闰年。year=2000 while year 0:x=1for j in r

26、ange(2,i):#变量si皿求利,变量p记录个数1516#每次初始化为I,默认是质数17#内层循环判断是否为质数if i%j=0:#判断是否能被整除x=0|break#跳出内层循环if x:#等价于.丫=】或”=0if p 10:print(i,end=,)else:breaki-=1print(nl00内最大的10个质数和为:%d%Sum)Run:demo03_04_08D:PythonPython36python.exe F:/python/new/demoC 97 89 83 79 73 71 67 61 59 53 司100内最大的10个质数和为:732鸥区后 Process fi

27、nished with exit code 03.4实验第三章流程控制1、求1-10的所有偶数的和。1 I#求17代所有偶数的和。Sum=03 Hfor i in range(1,11):#从 I循环到 104 if i%2!=0:#如果是偶数就不输出,也不做计算cont inuepr int(i,end=)Sum+=ipr int(n 10以内的偶数和为:%d%Sum)Run:demo03_04_093鸣D:PythonPython36python.exe F:/pjrthon/new/demo03_04_09.py 2 4 6 8 1010以内的偶数和为:30Process f inish

28、ed with exit code 03.4实验第三章流程控制2、将10-20不能被2或3整除的数输出。1#将不能被诫灌除的数输出。2 Hf or i in range(10,20):#从】微环到 193 if i%2=0 or i%3=0:#判断是否能否被诫理除,是就不输出continue5.pr int(i,end二)Run:demo03_04_10 D:PythonPython36python.exe F:/pjTthon/new/demo03_04_10.py,11 13 17 19Process finished with exit code 0大数据应用人才培养系列教材第三章流程控

29、制3.1 条件语句3.2 条件流程控制3.3 循环流程控制3.4 实验3.4小结习题3.5小结第三章流程控制本章讲解了Python的流程控制:if分支、for循环和while循环。计、for和while语法 上很简单,但通过组合或嵌套,可以实现各种简单到复杂的程序逻辑结构。为了保证程序流程控制的灵活性,Python提供了continue和break两个语句来控制 循环语句。continue语句用来结束本次循环,提前进入下一次循环。break语句用于强 制退出循环,不执行循环体中剩余的循环次数。大数据应用人才培养系列教材第三章流程控制3.1 条件语句3.2 条件流程控制3.3 循环流程控制3.4 实验3.5 小结习题1._语句是else和if的组合。2._、_不能单独和if分支配合使用。3.每个流程结构语句后面必须要有_o4.Python中的流程控制语句有_、_和5.当循环_结束时才会执行else部分。感谢聆听



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3