Python程序设计-第四章 控制流.ppt_第1页
Python程序设计-第四章 控制流.ppt_第2页
Python程序设计-第四章 控制流.ppt_第3页
Python程序设计-第四章 控制流.ppt_第4页
Python程序设计-第四章 控制流.ppt_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Python程序设计ProgramminginPython 主讲 庞胜利 2 第四章控制流 ifwhileforbreakcontinue 控制流简介 在到目前为止我们所见到的程序中 总是有一系列的语句 Python忠实地按照它们的顺序执行它们 如果想要改变语句流的执行顺序 该怎么办呢 例如 想要让程序做一些决定 根据不同的情况做不同的事情 如 根据时间打印 早上好 或者 晚上好 这是通过控制流语句实现的 在Python中有三种控制流语句 if for和while if if语句是选取要执行的操作 是Python主要的选择工具 代表Python程序所拥有的大多数逻辑 if语句是复合语句 同其他复合语句一样 if语句可以包含其他语句 if通用格式 if elif else if的例子 coding utf 8number 23guess int raw input Enteraninteger ifguess number print Congratulations youguessedit Newblockstartshereprint butyoudonotwinanyprizes Newblockendshereelifguessnumbertoreachhereprint Done Thislaststatementisalwaysexecuted aftertheifstatementisexecuted if Python中没有switch case语句可以用多个if实现 或者对字典进行索引运算或搜索列表 因为字典和列表可在运行时创建 有时会比硬编码的if逻辑更有灵活性 字典实现switch choice ham dic spam 1 25 ham 1 99 eggs 0 99 bacon 1 10 printdic choice ifchoice spam print1 25elifchoice ham print1 99elifchoice eggs print0 99elifchoice bacon print1 10else print badchoice 字典适用于将值和键相关联 值也可以是函数 因此可以用于更多灵活的处理 真值测试 在Python中 与大多数程序设计语言一样 整数0代表假 1代表真 不过 除此之外 Python也把任意的空数据结构视为假 更一般的 真和假的概念是Python中每个对象的固有属性 每个对象不是真就是假 真值测试 数字如果非零 则为真对象如果非空 则为真数字零 空对象以及特殊对象None都被认作是假比较和相等测试会递归的应用在数据结构中比较和相等测试会返回True或False布尔and和or运算符会返回真或假的操作对象 真值测试 2 3True 2or32 0or22 or hello hello or Python会由左向右求算操作对象 然后返回第一个为真的操作对象 再者Python会在其找到的第一个真值操作数的地方停止 这通常称为短路运算 2and33 2and and3 and Python会由左向右求算操作对象 然后返回第一个为假的操作对象 再者Python会在其找到的第一个假值操作数的地方停止 这些最终结果都和C及其他语言相同 如果在if测试时 会得到逻辑真或假的值 然而 Python中 布尔运算返回左边或右边的对象 而不是简单的整数标志位 三元表达式 A Y X Z ifX A Yelse A Z A YifXelseZ a t if spam else f a t a t if else f a f while for while for用于提供循环的控制功能while一般格式 while Looptest Loopbodyelse Optionalelse Runifdidn texitloopwithbreak a 0b 10whilea b printaa a 1 while例子 number 23running Truewhilerunning guess int raw input Enteraninteger ifguess number print Congratulations youguessedit running False thiscausesthewhilelooptostopelifguess number print No itisalittlelowerthanthat else print No itisalittlehigherthanthat else print Thewhileloopisover Doanythingelseyouwanttodohereprint Done 中断循环 在循环进行中 如果满足一定条件而中断整个循环或本次循环 可以使用break或continue break语句是用来终止循环语句的 哪怕循环条件没有称为False或序列还没有被完全递归 也停止执行循环语句 注意的是 如果从for或while循环中终止 任何对应的循环else块将不执行 break的例子 whileTrue s raw input Entersomething ifs quit breakprint Lengthofthestringis len s print Done continue continue语句被用来告诉Python跳过当前循环块中的剩余语句 然后继续进行下一轮循环 whileTrue s raw input Entersomething ifs quit breakiflen s 3 print Inputisofsufficientlength continue Dootherkindsofprocessinghere for for循环在Python中是一个通用的序列迭代器 可以遍历任何有序的序列对象内的元素 for语句可用于字符串 列表 元组 其他内置可迭代对象 以及用户通过类创建的新对象 for一般格式 for循环首行定义一个赋值目标 以及想遍历的对象 首行后面是想重复的语句块运行for循环时 会逐个将序列对象中的元素赋值给目标 然后为每个元素执行循环主体 循环主体一般使用赋值目标来引用序列中当前元素 forin Assignobjectitemstotarget Repeatedloopbody usetargetelse Ifwedidn thita break for完整格式 forin Assignobjectitemstotarget Repeatedloopbody usetargetif break Exitloopnow skipelseif continue Gototopofloopnowelse Ifwedidn thita b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论