电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

循序渐进学Python

18页
  • 卖家[上传人]:cl****1
  • 文档编号:507391388
  • 上传时间:2023-01-31
  • 文档格式:DOCX
  • 文档大小:615.84KB
  • / 18 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、循序渐进学 Python 之循环语句(1)本文将详细介绍Python语言中的两种选择语句:while语句,for语句以及经常跟for语句一 起使用的range()内建函数。与此同时,我们还将说明跟循环语句紧密相关的break语句、 continue语句和pass语句。在整个讲解过程中,我们会适时地给出一些简单的示例程序,以 帮助读者加深理解。本文将详细介绍Python语言中的两种选择语句:while语句,for语句以及经常跟for 语句一起使用的range()内建函数。与此同时,我们还将说明跟循环语句紧密相关的break 语句、continue语句和pass语句。在整个讲解过程中,我们会适时地给出一些简单的示例 程序,以帮助读者加深理解。一、程序的循环结构在Python语言中,除了顺序结构和选择结构之外,还有一种常见的结构:循环结构。 所谓循环结构,就是在给定的条件为真的情况下,重复执行某些操作。具体而言, Python 语言中的循环结构包含两种语句,分别是while语句和for语句。这两种语句是编程时的基 本元素,例如当我们需要用户输入十个整数时,如果使用循序结构的话,则需要使用十条

      2、输 入语句,但是使用循环结构的话,我们只需要一条语句就够了。由此可见,循环结构能够给 我们的开发工作带来极大的便利。二、while 语句Python 的 while 语句的功能是,当给定的条件表达式为真时,重复执行循环体(即内 嵌的语句),直到条件为假时才退出循环,并执行循环体后面的语句o while语句的语法形while 语句的流程图如下所示:不难发现,两者都有一个表达式和语句体组成,并且都是在表达式的值为真是执行语句 体。关键的区别在于,对于if语句,它执行完语句体后,马上退出了 if语句;对于while 语句,它执行完语句体后,立刻又返回到表达式,只要表达式的值为真,它会一直重复这一 过程。在使用while语句时,有四点要注意,一是组成循环体的各语句的缩进形式;二是循环 体中要有使循环趋向于结束(即使表达式的值为假)的代码,否则会造成无限循环;三是循环体既可以由单语句组成,也可以由多条语句组成,但是不能没有任何语句;四是Pyt hon 对大小写敏感,所以关键字 while 必须小写。现在我们用一个示例程序来演示一下while语句的用法。我们的程序很简单的,它只是 计算并输出1到

      3、30之间的奇数。代码如下所示当我们在 IDEL 中运行该程序时,结果如下所示:使用循环结构的时候,控制循环的结束是一个重要的考虑事项。对于while语句来说, 通常使用两种方式来控制循环的结束,一种是计数器循环控制法,一种是信号值循环控制法。 下面分别加以解释。循序渐进学 Python 之循环语句(2)1、计数器循环控制法 用计数器控制的循环结构,非常适合于在循环执行之前就知道要重复执行次数的那些情 况。下面我们用一个示例程序来加以说明。我们的程序要求用户输入10 个整数,每次输入一个数字,之后求出其平均值并输出结果。 由于使用计数器来控制输入循环,所以必须有一个变量来充当计数器,在这里是变量 coun ter,我们用它来控制输入语句的执行次数。一旦计数器超过10,便停止循环。此外, 我们还需要一个变量来累计输入的整数的值,这里是变量tot al,我们将其初始化为0。代 码如下所示:# -*- coding: cp936 -*-#让用户输入十个整数,然后计算并输出其平均值现在,我们需要让用户输入十个整数。我们这里用一个while语句让raw_input ()函 数循环执行十次。这里循环

      4、语句中的表达式为:counter = 10,因为counter的初始值为 1,而循环体中使循环趋向于结束的语句是: counter = counter +1,所以循环体将执行十 次。每轮循环中,raw_input ()函数会输出“请输入一个整数:”,提示用户进行输入。 当用户输入后,int ()函数马上将输入的内容转换为一个整数,并累加到变量total中。 我们注意到,这三个动作我们是用一条语句完成的。代码如下所示:#让用户输入10个整数,并将其累加 while counter = 10:total = total + int(raw_input(请输入一个整数:)#该语句执行了三个动作counter = counter + 1该程序的最后部分是计算并打印计算结果。我们首先将累加的结果转换为浮点数,然后 除以10,并用打印语句进行输出。代码如下所示:#计算并输出平均数print 您输入的十个整数的平均值是:,float(total)/10注意,有时候初学者喜欢用计数器counter来除以累加值total来计算平均值,这是不 对的。因为当用户输入第十个整数时,counter的值为10,表

      5、达式值为真,所以循环体继续 执行。当执行了循环体的最后一条语句,即counter = counter + 1之后,counter的值会变成11,再次判断表达式,这时表达式的值为假,所以退出循环。也就是说,当循环退出时, counter 的值是1 1 ,而不是1 0。所以,用它来求1 0 个整数的平 均值显然是错误的。当我们在IDEL中运行该程序时,结果如下所示:2、信号值循环控制法上面介绍的计数器循环控制法,非常适合于事先知道循环次数的情况,但是很多时候我 们无法事先知道具体的循环次数,这时该怎么办呢?这就要用到下面介绍的信号值循环控制 法了。下面举例说明。假设我们要设计一个小程序来计算公司各科室工作人员的平均年龄。我们依旧用一个循 环语句来录入各人员的年龄,但是各科室人员数不一,因而计数器循环控制法显然是不合适 的,所以我们要使用一种更加灵活的循环控制方法:信号值循环控制法。所谓信号值,就是 一个特殊值,它用来指示循环结束。就本例而言,我们可以不断的输入科室人员的年龄,直 到输入完毕,这时就可以输入我们的信号值,告诉程序我们的输入工作结束了。因为信号值跟正常的数据一起输入,所以选择信

      6、号值时一定要仔细,以防止与正常的值 相混淆。不过就本例而言,因为政府禁止企事业雇佣童工,所以科室人员的年龄肯定大于等 于 18 岁,为保险起见,我们选择1 作为我们的信号值,这绝对不会跟正常的科室人员的年 龄相混淆。代码如下所示:# -*- coding: cp936 -*- #计算科室人员平均年龄#定义并初始化变量total = 0年龄之和counter = 0人员数量#让用户输入年龄,并将用户输入内容转换为整数age = int(raw_input(请输入科室人员的年龄,1表示输入结束:#遇到1表示输入结束while age != 1:total = total + agecounter = counter + 1age = int(raw_input(请输入科室人员的年龄,1表示输入结 束:)#计算并输出平均数if counter != 0:print 科室人员的平均年龄是:, float(total)/counterelse:print没有输入任何科室人员的年龄!现在我们对程序代码作相应的解释。首先我们定义了两个变量,其中变量total用于存 放年龄累加值;变量counter用

      7、于存放已经录入的人员数。很明显,在输入人员的年龄之前, 这两个变量都应该初始化为0。代码如下所示:#定义并初始化变量total = 0年龄之和counter = 0人员数量接下来,在进入循环之前,程序要求用户输入一个职员的年龄,如下所示:#让用户输入年龄,并将用户输入内容转换为整数age = int(raw_input(请输入科室人员的年龄,1表示输入结束:)而这个年龄决定了是否进入循环结构。如果用户的第一个输入是个信号值的话,while 语句中的表达式的值为假,那么程序会跳过这个循环结构,直接执行循环语句后面的结构。 而在循环结构之后,正好是一个选择结构:#计算并输出平均数if counter != 0:print,科室人员的平均年龄是:, float(total)/counterelse:print没有输入任何科室人员的年龄!因为我们尚未输入任何人员的年龄,所以此时conuter变量的值为0那么肯定会执行 上述选择结构中else子句的内嵌语句,即打印“没有输入任何科室人员的年龄! ”。如果我们的第一条输入语句得到的不是信号值,那么程序就会进入循环:#遇到1表示输入结束while a

      8、ge != 1:total = total + agecounter = counter + 1age = int(raw_input(请输入科室人员的年龄,1表示输入结束:在循环体中,将输入的年龄累加到变量total中,并将计数器加1,接着执行循环体中的最后一条语句:要求用户再次输入一个人的年龄。需要注意的是,我们是在对while结构 的条件进行判断之前来请求下一个值,这样就能先判断刚才输入的值是否是信号值,再对该 值进行处理。当循环体中的语句执行一遍后,程序会重新检测while语句的条件表达式,以 决定是否再次执行while结构的循环体。换句话说,如果刚才输入的值是信号值,则退出循 环结构;否则,继续重复执行循环体。只要循环体执行一次,那么当退出循环后,计数人员数量的变量counter的值肯定大于 0,所以这时就会执行最后面的选择结构中的if子句内嵌的语句体,即计算平均年龄并打印 输出。当我们在IDEL中运行该程序时,结果如下所示:循序渐进学 Python 之循环语句(3)三、for语句循环结构在Python语言中有两种表现形式,一是前面介绍的while语句,再就是我们 这里要讲述

      9、的 for 语句。 for 语句基本上是一种遍历型的循环,因为它会依次对某个序列中 全体元素进行遍历,遍历完所有元素之后便终止循环。for语句的语法如下所示:for控制变量 in可遍历的表达式:循环体这里的关键字in是for语句的组成部分,而非运算符in (关于Python语言中的运算符我 们会在后续的文章中加以介绍)。“可遍历的表达式”被遍历处理,每次循环时,都会将“控 制变量”设置为“可遍历的表达式”的当前元素,然后在循环体开始执行。当“可遍历的表 达式”中的元素遍历一遍后,即没有元素可供遍历时,退出循环。for语句的示意图如下所 示:读者请注意,由于for语句中的“可遍历的表达式”涉及多种Python的数据类型,为 了防止一次灌输太多的内容导致读者难以适应,所以这里不作详细介绍,等到介绍有关数据 类型时我们再进行相应的讨论。现在,让我们以交互方式执行一个for语句,如下所示:四、range ()函数详解很多时候,for语句都是和range ()函数结合使用的,比如我们利用两者来输出0到9 之间的偶数,如下所示:# -*- coding: cp936 -*-#输出10以下的非负整数中的偶数print 10以下的非负整数中的偶数为:for integer in range(10):if integer % 2 = 0:print integer当我们在IDEL中运行该程序时,结果如下所示:现在解释一下程序的执行过程。首先,for语句开始执行时,range ()函数会生成一 个由09这十个值组成的序列;然后,将序列中的第一个值即0赋给变量integer,并执 行循环体。在循环体中,我们将变量integer除以2,如果余数为零,则打印该值;否则跳 过打

      《循序渐进学Python》由会员cl****1分享,可在线阅读,更多相关《循序渐进学Python》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.