python程序的控制结构.ppt

上传人:b****1 文档编号:1404843 上传时间:2022-10-22 格式:PPT 页数:64 大小:877.50KB
下载 相关 举报
python程序的控制结构.ppt_第1页
第1页 / 共64页
python程序的控制结构.ppt_第2页
第2页 / 共64页
python程序的控制结构.ppt_第3页
第3页 / 共64页
python程序的控制结构.ppt_第4页
第4页 / 共64页
python程序的控制结构.ppt_第5页
第5页 / 共64页
点击查看更多>>
下载资源
资源描述

python程序的控制结构.ppt

《python程序的控制结构.ppt》由会员分享,可在线阅读,更多相关《python程序的控制结构.ppt(64页珍藏版)》请在冰豆网上搜索。

python程序的控制结构.ppt

Python语言程序设计,第4章程序的控制结构,程序的基本结构,程序的流程图,程序流程图用一系列图形、流程线和文字说明描述程序的基本操作和控制流程,它是程序分析和过程描述的最基本方式。

流程图的基本元素包括7种,程序的流程图,程序流程图示例:

由连接点A连接的一个程序,程序的基本结构,顺序结构是程序的基础,但单一的顺序结构不可能解决所有问题。

程序由三种基本结构组成:

顺序结构分支结构循环结构这些基本结构都有一个入口和一个出口。

任何程序都由这三种基本结构组合而成,程序的基本结构,顺序结构是程序按照线性顺序依次执行的一种运行方式,其中语句块1S1和语句块S2表示一个或一组顺序执行的语句,程序的基本结构,分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式,包括单分支结构和二分支结构。

由二分支结构会组合形成多分支结构,程序的基本结构,循环结构是程序根据条件判断结果向后反复执行的一种运行方式,根据循环体触发条件不同,包括条件循环和遍历循环结构,程序的基本结构实例,对于一个计算问题,可以用IPO描述、流程图描述或者直接以Python代码方式描述,微实例4.1:

圆面积和周长的计算。

输入:

圆半径R处理:

圆面积:

S=*R*R圆周长:

L=2*R输出:

圆面积S、周长L,问题IPO描述,Python代码描述,程序的基本结构实例,微实例4.2:

实数绝对值的计算。

(a)问题IPO描述,(b)流程图描述,(c)Python代码描述,程序的基本结构实例,微实例4.3:

整数累加。

输入:

正整数R处理:

S=1+2+3+R输出:

输出S,(a)问题IPO描述,(b)流程图描述,(c)Python代码描述,程序的基本结构实例,IPO描述主要用于区分程序的输入输出关系,重点在于结构划分,算法主要采用自然语言描述流程图描述侧重于描述算法的具体流程关系,流程图的结构化关系相比自然语言描述更进一步,有助于阐述算法的具体操作过程Python代码描述是最终的程序产出,最为细致。

程序的分支结构,单分支结构:

if语句,Python中if语句的语法格式如下:

if:

语句块语句块是if条件满足后执行的一个或多个语句序列语句块中语句通过与if所在行形成缩进表达包含关系if语句首先评估的结果值,如果结果为True,则执行语句块里的语句序列,然后控制转向程序的下一条语句。

如果结果为False,语句块里的语句会被跳过。

布尔类型(bool),TrueFlasebool函数:

bool

(2)A=12type(A)数字非零为True字符串为True,空字符串为False,关系运算符,if语中部分可以使用任何能够产生True或False的语句形成判断条件最常见的方式是采用关系操作符Python语言共有6个关系操作符,逻辑操作符(notandor),优先级是notandor逻辑操作符and和or也称作短路操作符(short-circuitlogic):

它们的参数从左向右解析,一旦结果可以确定就停止。

例如,如果A和C为真而B为假,AandBandC不会解析C3and4,4and33or4(3),4or3(4),单分支结构:

if语句,if语句的控制流程图,if语句中语句块执行与否依赖于条件判断。

但无论什么情况,控制都会转到if语句后与该语句同级别的下一条语句,单分支结构:

if语句,微实例4.4:

PM2.5空气质量提醒

(1),输入:

接收外部输入PM2.5值处理:

ifPM2.5值=75,打印空气污染警告if35=PM2.5值75,打印空气污染警告ifPM2.5值35,打印空气质量优,建议户外运动输出:

打印空气质量提醒,二分支结构:

if-else语句,Python中if-else语句用来形成二分支结构,语法格式如下:

if:

else:

是在if条件满足后执行的一个或多个语句序列是if条件不满足后执行的语句序列二分支语句用于区分的两种可能True或者False,分别形成执行路径,二分支结构:

if-else语句,微实例4.5:

PM2.5空气质量提醒

(2),二分支结构:

if-else语句,二分支结构还有一种更简洁的表达方式,适合通过判断返回特定值,语法格式如下:

ifelse,二分支结构:

if-else语句,ifelse的紧凑结构非常适合对特殊值处理的情况,如下:

多分支结构:

if-elif-else语句,Python的if-elif-else描述多分支结构,语句格式如下:

if:

elif:

.else:

多分支结构:

if-elif-else语句,多分支结构是二分支结构的扩展,这种形式通常用于设置同一个判断条件的多条执行路径。

Python依次评估寻找第一个结果为True的条件,执行该条件下的语句块,同时结束后跳过整个if-elif-else结构,执行后面的语句。

如果没有任何条件成立,else下面的语句块被执行。

else子句是可选的,多分支结构:

if-elif-else语句,微实例4.4通过多条独立的if语句对同一个变量PM进行判断,这种情况更适合多分支结构,改造后的代码如下,身体质量指数BMI,BMI的定义如下:

BMI=体重(kg)身高2(m2)例如,一个人身高1.75米、体重75公斤,他的BMI值为24.49,身体质量指数BMI,编写一个根据体重和身高计算BMI值的程序,并同时输出国际和国内的BMI指标建议值,身体质量指数BMI,程序的循环结构,遍历循环:

for语句,遍历循环:

根据循环执行次数的确定性,循环可以分为确定次数循环和非确定次数循环。

确定次数循环指循环体对循环次数有明确的定义循环次数采用遍历结构中元素个数来体现Python通过保留字for实现“遍历循环”:

forin:

遍历循环:

for语句,遍历结构可以是字符串、文件、组合数据类型或range()函数:

遍历循环还有一种扩展模式,使用方法如下:

forin:

else:

遍历循环:

for语句,当for循环正常执行之后,程序会继续执行else语句中内容。

else语句只在循环正常执行之后才执行并结束,因此,可以在中放置判断循环执行情况的语句。

无限循环:

while语句,无限循环:

无限循环一直保持循环操作直到特定循环条件不被满足才结束,不需要提前知道确定循环次数。

Python通过保留字while实现无限循环,使用方法如下:

while:

语句块,无限循环:

while语句,无限循环也有一种使用保留字else的扩展模式:

while:

else:

循环保留字:

break和continue,循环结构有两个辅助保留字:

break和continue,它们用来辅助控制循环执行break用来跳出最内层for或while循环,脱离该循环后程序从循环后代吗继续续执行,其中,break语句跳出了最内层for循环,但仍然继续执行外层循环。

每个break语句只有能力跳出当前层次循环,循环保留字:

break和continue,continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。

对于while循环,继续求解循环条件。

而对于for循环,程序流程接着遍历循环列表对比continue和break语句,如下,循环保留字:

break和continue,continue语句和break语句的区别是:

continue语句只结束本次循环,而不终止整个循环的执行。

break语句则是结束整个循环过程,不再判断执行循环的条件是否成立,循环保留字:

break和continue,for循环和while循环中都存在一个else扩展用法。

else中的语句块只在一种条件下执行,即for循环正常遍历了所有内容没有因为break或return而退出。

continue保留字对else没有影响。

看下面两个例子,random库的使用,random库概述,随机数在计算机应用中十分常见,Python内置的random库主要用于产生各种分布的伪随机数序列。

random库采用梅森旋转算法(Mersennetwister)生成伪随机数序列,可用于除随机性要求更高的加解密算法外的大多数工程应用。

使用random库主要目的是生成随机数,因此,读者只需要查阅该库的随机数生成函数,找到符合使用场景的函数使用即可。

这个库提供了不同类型的随机数函数,所有函数都是基于最基本的random.random()函数扩展而来。

random库解析,random库解析,对random库的引用方法与math库一样,采用下面两种方式实现:

importrandom或fromrandomimport*,random库解析,生成随机数之前可以通过seed()函数指定随机数种子,随机种子一般是一个整数,只要种子相同,每次生成的随机数序列也相同。

这种情况便于测试和同步数据,的计算,的计算,(圆周率)是一个无理数,即无限不循环小数。

精确求解圆周率是几何学、物理学和很多工程学科的关键。

对的精确求解曾经是数学历史上一直难以解决的问题之一,因为无法用任何精确公式表示,在电子计算机出现以前,只能通过一些近似公式的求解得到,直到1948年,人类才以人工计算方式得到的808位精确小数。

的计算,随着计算机的出现,数学家找到了另类求解的另类方法:

蒙特卡罗(MonteCarlo)方法,又称随机抽样或统计试验方法。

当所要求解的问题是某种事件出现的概率,或者是某个随机变量的期望值时,它们可以通过某种“试验”的方法,得到这种事件出现的频率,或者这个随机变数的平均值,并用它们作为问题的解。

这就是蒙特卡罗方法的基本思想。

的计算,应用蒙特卡罗方法求解的基本步骤如下:

随机向单位正方形和圆结构,抛洒大量“飞镖”点计算每个点到圆心的距离从而判断该点在圆内或者圆外用圆内的点数除以总点数就是/4值。

随机点数量越大,越充分覆盖整个图形,计算得到的值越精确。

实际上,这个方法的思想是利用离散点值表示图形的面积,通过面积比例来求解值。

的计算,计算使用的正方形和圆结构,计算使用的1/4区域和抛点过程,的计算,的计算,不同抛点数产生的精度和运行时间,异常处理机制,异常处理:

try-except语句,观察下面这段小程序:

当用户输入的不是数字呢?

异常处理:

try-except语句(接管错误),Python解释器返回了异常信息,同时程序退出,异常处理:

try-except语句,Python异常信息中最重要的部分是异常类型,它表明了发生异常的原因,也是程序处理异常的依据。

Python使用try-except语句实现异常处理,基本的语法格式如下:

try:

except:

异常处理:

try-except语句,该程序执行效果如下:

异常的高级用法,try-except语句可以支持多个except语句,语法格式如下:

try:

except:

.except:

except:

异常的高级用法,最后一个except语句没有指定任何类型,表示它对应的语句块可以处理所有其他异常。

这个过程与if-elif-else语句类似,是分支结构的一种表达方式,一段代码如下,异常的高级用法,该程序将用户输入的数字作为索引从字符串alp中返回一个字符,当用户输入非整数字符时,exceptNameError异常被捕获到,提示升用户输入类型错误,当用户输入数字不在01到256之间时,异常被except捕获,程序打印其他错误信息,执行过程和结果如下:

异常的高级用法,除了try和except保留字外,异常语句还可以与else和finally保留字配合使用,语法格式如下:

try:

except:

else:

finally:

异常的高级用法,异常的高级用法,采用else和finally修改代码如下:

执行过程和结果如下:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1