欢迎来到咨信网! | 成为共赢成为共赢 咨信网助力知识提升 | 自信网络旗下运营:咨信网 自信AI创作助手 自信AI导航
咨信网
全部分类
  • 包罗万象   教育专区 >
  • 品牌综合   考试专区 >
  • 管理财经   行业资料 >
  • 环境建筑   通信科技 >
  • 法律文献   文学艺术 >
  • 学术论文   百科休闲 >
  • 应用文书   研究报告 >
  • ImageVerifierCode 换一换
    首页 咨信网 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    python程序的控制结构.ppt

    • 资源ID:757600       资源大小:1.52MB        全文页数:64页
    • 资源格式: PPT        下载积分:11金币
    微信登录下载
    验证码下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    二维码
    微信扫一扫登录
    下载资源需要11金币
    邮箱/手机:
    验证码: 获取验证码
    温馨提示:
    支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    VIP下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    声明    |    会员权益      获赠5币      写作写作
    1、填表:    下载求助     索取发票    退款申请
    2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
    6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    7、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

    python程序的控制结构.ppt

    1、Python语言程序设计第4章程序的控制结构程序的基本结构程序的流程图程序流程图用一系列图形、流程线和文字说明描述程序的基本操作和控制流程,它是程序分析和过程描述的最基本方式。流程图的基本元素包括7种程序的流程图程序流程图示例:由连接点程序流程图示例:由连接点A连接的一个程序连接的一个程序程序的基本结构顺序结构是程序的基础,但单一的顺序结构不可能解决所有问题。程序由三种基本结构组成:n顺序结构n分支结构n循环结构这些基本结构都有一个入口和一个出口。任何程序都由这三种基本结构组合而成程序的基本结构顺序结构是程序按照线性顺序依次执行的一种运行方式,其中语句块1S1和语句块S2表示一个或一组顺序执行

    2、的语句程序的基本结构分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式,包括单分支结构和二分支结构。由二分支结构会组合形成多分支结构程序的基本结构循环结构是程序根据条件判断结果向后反复执行的一种运行方式,根据循环体触发条件不同,包括条件循环和遍历循环结构程序的基本结构实例对于一个计算问题,可以用IPO描述、流程图描述或者直接以Python代码方式描述微实微实例例4.1:圆面:圆面积和周长的计算。积和周长的计算。输入输入:圆半径R处理处理:圆面积:S=*R*R圆周长:L=2*R输出输出:圆面积S、周长L1234R=eval(input(请输入圆半径请输入圆半径:)S=3.1415

    3、*R*RL=2*3.1415*Rprint(面积和周长面积和周长:,S,L)问题IPO描述Python代码描述程序的基本结构实例微实例微实例4.2:实数绝对值的计算。:实数绝对值的计算。1234R=eval(input(输输入入实实数数:)if(R0):R=-Rprint(绝对值绝对值,R)(a)问题IPO描述(b)流程图描述(c)Python代码描述程序的基本结构实例微实例微实例4.3:整数累加。:整数累加。输入:正整数R处理:S=1+2+3+R输出:输出S123456R=eval(input(请请输输入入正正整数整数:)i,S=0,0while(i=R):S=S+ii=i+1print(累

    4、加求和累加求和,S)(a)问题IPO描述(b)流程图描述(c)Python代码描述程序的基本结构实例IPO描述主要用于区分程序的输入输出关系,重点在于结构划分,算法主要采用自然语言描述流程图描述侧重于描述算法的具体流程关系,流程图的结构化关系相比自然语言描述更进一步,有助于阐述算法的具体操作过程Python代码描述是最终的程序产出,最为细致。程序的分支结构单分支结构:if语句Python中if语句的语法格式如下:if:语句块语句块是if条件满足后执行的一个或多个语句序列语句块中语句通过与if所在行形成缩进表达包含关系if语句首先评估的结果值,如果结果为True,则执行语句块里的语句序列,然后控

    5、制转向程序的下一条语句。如果结果为False,语句块里的语句会被跳过。布尔类型(bool)TrueFlasebool函数:bool(2)A=12type(A)数字非零为True字符串为True,空字符串为False关系运算符if语中部分可以使用任何能够产生True或False的语句形成判断条件最常见的方式是采用关系操作符Python语言共有6个关系操作符操作符数学符号操作符含义小于=大于等于大于=等于!=不等于逻辑操作符(notandor)l优先级是notandorl逻辑操作符and和or也称作短路操作符(short-circuitlogic):它们的参数从左向右解析,一旦结果可以确定就停止。

    6、例如,如果A和C为真而B为假,AandBandC不会解析Cl3and4,4and3l3or4(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,打印空气质量优,建议户外运动输出:打印空气质量提醒 微实例4.4m4.4PM25Warning.py1234567PM=e

    7、val(input(请输入请输入PM2.5数值数值:)if0=PM35:print(空气优质,快去户外运动空气优质,快去户外运动!)if35=PM75:print(空气良好,适度户外活动!空气良好,适度户外活动!)if75=PM:print(空气污染,请小心!空气污染,请小心!)二分支结构:if-else语句Python中if-else语句用来形成二分支结构,语法格式如下:if:else:是在if条件满足后执行的一个或多个语句序列是if条件不满足后执行的语句序列二分支语句用于区分的两种可能True或者False,分别形成执行路径二分支结构:if-else语句微实例4.5:PM2.5空气质量提醒

    8、(2)微实例4.5m4.5PM25Warning.py12345PM=eval(input(请输入请输入PM2.5数值数值:)ifPM=75:print(空气存在污染,请小心!空气存在污染,请小心!)else:print(空气没有污染,可以开展户外运动空气没有污染,可以开展户外运动!)二分支结构:if-else语句二分支结构还有一种更简洁的表达方式,适合通过判断返回特定值,语法格式如下:ifelse12PM=eval(input(请输入请输入PM2.5数值数值:)print(空气空气污染污染!.format(存在存在ifPM=75else没有没有)二分支结构:if-else语句count=2c

    9、ountifcount!=0else不存在不存在2count=0countifcount!=0else不存在不存在不存在不存在ifelse的紧凑结构非常适合对特殊值处理的情况,如下:多分支结构:if-elif-else语句Python的if-elif-else描述多分支结构,语句格式如下:if:elif:.else:多分支结构:if-elif-else语句多分支结构是二分支结构的扩展,这种形式通常用于设置同一个判断条件的多条执行路径。Python依次评估寻找第一个结果为True的条件,执行该条件下的语句块,同时结束后跳过整个if-elif-else结构,执行后面的语句。如果没有任何条件成立,e

    10、lse下面的语句块被执行。else子句是可选的多分支结构:if-elif-else语句微实例4.4通过多条独立的if语句对同一个变量PM进行判断,这种情况更适合多分支结构,改造后的代码如下1234567PM=eval(input(请输入请输入PM2.5数值数值:)if0=PM35:print(空气优质,快去户外运动空气优质,快去户外运动!)elif35=PM75:print(空气良好,适度户外活动!空气良好,适度户外活动!)else:print(空气污染,请小心!空气污染,请小心!)身体质量指数BMIBMI的定义如下:BMI=体重(kg)身高2(m2)例如,一个人身高1.75米、体重75公斤,

    11、他的BMI值为24.49身体质量指数BMI分类国际BMI值(kg/m2)国内BMI值(kg/m2)偏瘦18.5=30=28编写一个根据体重和身高计算BMI值的程序,并同时输出国际和国内的BMI指标建议值身体质量指数BMI实例代码5.1e5.1CalBMI.py12345678910111213141516171819202122#e5.1CalBMI.pyheight,weight=eval(input(请输入身高请输入身高(米米)和体重和体重(公斤公斤)逗号隔开逗号隔开:)bmi=weight/pow(height,2)print(BMI数值为:数值为::.2f.format(bmi)wto

    12、,dom=,ifbmi18.5:#WTO标准标准wto=偏瘦偏瘦elifbmi25:#18.5=bmi25wto=正常正常elifbmi30:#25=bmi30wto=偏胖偏胖else:wto=肥胖肥胖ifbmi18.5:#我国卫生部标准我国卫生部标准dom=偏瘦偏瘦elifbmi24:#18.5=bmi24dom=正常正常elifbmi28:#24=bmi请输入身高(米)和体重(公斤)逗号隔开:1.75,75BMI数值为:24.49BMI指标为:国际正常,国内偏胖实例代码5.2e5.2CalBMI.py123456789101112131415161718#e5.2CalBMI.pyheig

    13、ht,weight=eval(input(请输入身高请输入身高(米米)和体重和体重(公斤公斤)逗号隔开逗号隔开:)bmi=weight/pow(height,2)print(BMI数值为:数值为::.2f.format(bmi)wto,dom=,ifbmi18.5:wto,dom=偏瘦偏瘦,偏瘦偏瘦elif18.5=bmi24:wto,dom=正常正常,正常正常elif24=bmi25:wto,dom=正常正常,偏胖偏胖elif25=bmi28:wto,dom=偏胖偏胖,偏胖偏胖elif28=bmi30:wto,dom=偏胖偏胖,肥胖肥胖else:wto,dom=肥胖肥胖,肥胖肥胖print(

    14、BMI指标为指标为:国际国际0,国内国内1.format(wto,dom)程序的循环结构遍历循环:for语句遍历循环:根据循环执行次数的确定性,循环可以分为确定次数循环和非确定次数循环。确定次数循环指循环体对循环次数有明确的定义循环次数采用遍历结构中元素个数来体现Python通过保留字for实现“遍历循环”:forin:遍历循环:for语句遍历结构可以是字符串、文件、组合数据类型或range()函数:循环N次foriinrange(N):遍历文件fi的每一行forlineinfi:遍历字符串sforcins:遍历列表lsforiteminls:遍历循环还有一种扩展模式,使用方法如下:forin

    15、:else:遍历循环:for语句当for循环正常执行之后,程序会继续执行else语句中内容。else语句只在循环正常执行之后才执行并结束,因此,可以在中放置判断循环执行情况的语句。12345forsinBIT:print(循环进行中循环进行中:+s)else:s=循环正常结束循环正常结束print(s)循环进行中:B循环进行中:I循环进行中:T循环正常结束无限循环:while语句无限循环:无限循环一直保持循环操作直到特定循环条件不被满足才结束,不需要提前知道确定循环次数。Python通过保留字while实现无限循环,使用方法如下:while:语句块无限循环:while语句无限循环也有一种使用保

    16、留字else的扩展模式:while:else:1234567s,idx=BIT,0whileidx循环进行中:B循环进行中:I循环进行中:T循环正常结束循环保留字:break和continue循环结构有两个辅助保留字:break和continue,它们用来辅助控制循环执行break用来跳出最内层for或while循环,脱离该循环后程序从循环后代吗继续续执行12345forsinBIT:foriinrange(10):print(s,end=)ifs=I:breakBBBBBBBBBBITTTTTTTTTT其中,break语句跳出了最内层for循环,但仍然继续执行外层循环。每个break语句只有

    17、能力跳出当前层次循环循环保留字:break和continuecontinue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。对于while循环,继续求解循环条件。而对于for循环,程序流程接着遍历循环列表对比continue和break语句,如下1234forsinPYTHON:ifs=T:continueprint(s,end=)1234forsinPYTHON:ifs=T:breakprint(s,end=)PYHONPY循环保留字:break和continuecontinue语句和break语句的区别是:continue语句只结束本次循环,而不终止整个循环的执行

    18、。break语句则是结束整个循环过程,不再判断执行循环的条件是否成立1234forsinPYTHON:ifs=T:continueprint(s,end=)1234forsinPYTHON:ifs=T:breakprint(s,end=)PYHONPY循环保留字:break和continuefor循环和while循环中都存在一个else扩展用法。else中的语句块只在一种条件下执行,即for循环正常遍历了所有内容没有因为break或return而退出。continue保留字对else没有影响。看下面两个例子123456forsinPYTHON:ifs=T:continueprint(s,end

    19、=)else:print(正常退出正常退出)123456forsinPYTHON:ifs=T:breakprint(s,end=)else:print(正常退出正常退出)PYHON正常退出PYrandom库的使用random库概述随机数在计算机应用中十分常见,Python内置的random库主要用于产生各种分布的伪随机数序列。random库采用梅森旋转算法(Mersennetwister)生成伪随机数序列,可用于除随机性要求更高的加解密算法外的大多数工程应用。使用random库主要目的是生成随机数,因此,读者只需要查阅该库的随机数生成函数,找到符合使用场景的函数使用即可。这个库提供了不同类型的

    20、随机数函数,所有函数都是基于最基本的random.random()函数扩展而来。random库解析函数描述seed(a=None)初始化随机数种子,默认值为当前系统时间random()生成一个0.0,1.0)之间的随机小数randint(a,b)生成一个a,b之间的整数getrandbits(k)生成一个k比特长度的随机整数randrange(start,stop,step)生成一个start,stop)之间以step为步数的随机整数uniform(a,b)生成一个a,b之间的随机小数choice(seq)从序列类型(例如:列表)中随机返回一个元素shuffle(seq)将序列类型中元素随机排

    21、列,返回打乱后的序列sample(pop,k)从pop类型中随机选取k个元素,以列表类型返回random库解析对random库的引用方法与math库一样,采用下面两种方式实现:importrandom或fromrandomimport*fromrandomimport*random()0.2922089114412476uniform(1,10)1.5913082783598524uniform(1,20)7randrange(0,100,4)#从从0开始到开始到100以以4递增的递增的元素中随机返回元素中随机返回96choice(range(100)97ls=list(range(10)pr

    22、int(ls)0,1,2,3,4,5,6,7,8,9shuffle(ls)print(ls)5,8,4,7,6,9,3,0,2,10,1,2,3,4,5,6,7,8,9random库解析生成随机数之前可以通过seed()函数指定随机数种子,随机种子一般是一个整数,只要种子相同,每次生成的随机数序列也相同。这种情况便于测试和同步数据seed(125)#随机种子赋值随机种子赋值125.format(randint(1,10),randint(1,10),randint(1,10)4.4.10.format(randint(1,10),randint(1,10),randint(1,10)5.10.

    23、3seed(125)#再次给随机种子赋值再次给随机种子赋值125.format(randint(1,10),randint(1,10),randint(1,10)4.4.10的计算的计算的计算(圆周率)是一个无理数,即无限不循环小数。精确求解圆周率是几何学、物理学和很多工程学科的关键。对的精确求解曾经是数学历史上一直难以解决的问题之一,因为无法用任何精确公式表示,在电子计算机出现以前,只能通过一些近似公式的求解得到,直到1948年,人类才以人工计算方式得到的808位精确小数。的计算的计算随着计算机的出现,数学家找到了另类求解的另类方法:蒙特卡罗(MonteCarlo)方法,又称随机抽样或统计试

    24、验方法。当所要求解的问题是某种事件出现的概率,或者是某个随机变量的期望值时,它们可以通过某种“试验”的方法,得到这种事件出现的频率,或者这个随机变数的平均值,并用它们作为问题的解。这就是蒙特卡罗方法的基本思想。的计算的计算应用蒙特卡罗方法求解的基本步骤如下:随机向单位正方形和圆结构,抛洒大量“飞镖”点计算每个点到圆心的距离从而判断该点在圆内或者圆外用圆内的点数除以总点数就是/4值。随机点数量越大,越充分覆盖整个图形,计算得到的值越精确。实际上,这个方法的思想是利用离散点值表示图形的面积,通过面积比例来求解值。的计算的计算计算使用的正方形和圆结构 计算使用的1/4区域和抛点过程的计算的计算实例代

    25、码6.1e6.1CalPi.py123456789101112131415#e6.1CalPi.pyfromrandomimportrandomfrommathimportsqrtfromtimeimportclockDARTS=10000hits=0.0clock()foriinrange(1,DARTS+1):x,y=random(),random()dist=sqrt(x*2+y*2)ifdistPi值是3.144.运行时间是:0.016477s的计算的计算DARTS运行时间2103.1093750.011s2113.1386710.012s2123.1503900.014s2133.1

    26、435540.018s2143.1413570.030s2153.1478270.049s2163.1419670.116s2183.1445770.363s2203.14266967771.255s2253.141697883640.13s不同抛点数产生的精度和运行时间异常处理机制异常处理异常处理:try-except语句语句12num=eval(input(请输入一个整数请输入一个整数:)print(num*2)观察下面这段小程序:当用户输入的不是数字呢?请输入一个整数:10010000请输入一个整数:NOTraceback(mostrecentcalllast):FileD:/Pytho

    27、nPL/echoInt.py,line1,innum=eval(input(请输入一个整数:)File,line1,inNameError:nameNoisnotdefined异常处理异常处理:try-except语句语句(接管错误)Python解释器返回了异常信息,同时程序退出异常处理异常处理:try-except语句语句Python异常信息中最重要的部分是异常类型,它表明了发生异常的原因,也是程序处理异常的依据。Python使用try-except语句实现异常处理,基本的语法格式如下:try:except:异常处理异常处理:try-except语句语句12try:num=eval(inpu

    28、t(请输入一个整数请输入一个整数:)print(num*2)except:print(输入错误,请输入一个整数输入错误,请输入一个整数!)该程序执行效果如下:请输入一个整数:NO输入错误,请输入一个整数!异常的高级用法异常的高级用法try-except语句可以支持多个except语句,语法格式如下:try:except:.except:except:异常的高级用法异常的高级用法最后一个except语句没有指定任何类型,表示它对应的语句块可以处理所有其他异常。这个过程与if-elif-else语句类似,是分支结构的一种表达方式,一段代码如下12345678try:alp=ABCDEFGHIJKL

    29、MNOPQRSTUVWXYZidx=eval(input(请输入一个整数请输入一个整数:)print(alpidx)exceptNameError:print(输入错误,请输入一个整数输入错误,请输入一个整数!)except:print(其他错误其他错误)异常的高级用法异常的高级用法该程序将用户输入的数字作为索引从字符串alp中返回一个字符,当用户输入非整数字符时,exceptNameError异常被捕获到,提示升用户输入类型错误,当用户输入数字不在01到256之间时,异常被except捕获,程序打印其他错误信息,执行过程和结果如下:请输入一个整数:NO输入错误,请输入一个整数!请输入一个整数

    30、:100其他错误异常的高级用法异常的高级用法除了try和except保留字外,异常语句还可以与else和finally保留字配合使用,语法格式如下:try:except:else:finally:异常的高级用法异常的高级用法异常的高级用法异常的高级用法采用else和finally修改代码如下:12345678910try:alp=ABCDEFGHIJKLMNOPQRSTUVWXYZidx=eval(input(请输入一个整数请输入一个整数:)print(alpidx)exceptNameError:print(输入错误,请输入一个整数输入错误,请输入一个整数!)else:print(没有发生异常没有发生异常)finally:print(程序执行完毕,不知道是否发生了异常程序执行完毕,不知道是否发生了异常)执行过程和结果如下:请输入一个整数:5F没有发生异常程序执行完毕,不知道是否发生了异常请输入一个整数:NO输入错误,请输入一个整数!程序执行完毕,不知道是否发生了异常


    注意事项

    本文(python程序的控制结构.ppt)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表




    页脚通栏广告
    关于我们 - 网站声明 - 诚招英才 - 文档分销 - 服务填表 - 联系我们 - 成长足迹

    Copyright ©2010-2024   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:4008-655-100    投诉/维权电话:4009-655-100   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-2024(办理中)    



    关注我们 :gzh.png  weibo.png  LOFTER.png