Pyth技术基础编程 8_第1页
Pyth技术基础编程 8_第2页
Pyth技术基础编程 8_第3页
Pyth技术基础编程 8_第4页
Pyth技术基础编程 8_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

第3章程序流程控制程序控制结构分支结构循环控制:break和continue异常处理循环结构主要内容0102030405程序控制结构01程序流程控制顺序结构:代码按照从上到下的顺序依次执行。分支结构:根据条件判断选择执行不同的代码块。循环结构:重复执行某段代码,直到满足特定条件。图1三种基本流程控制结构顺序结构分支结构循环结构分支结构02单分支结构:if语句单分支结构是最简单的条件判断结构,当条件为真时执行特定代码块。语法:if条件:

代码块说明:如果条件为True,则执行代码块;否则跳过。———————————————————age=18ifage>=18:print("你已经成年了!")———————————————————双分支结构:if...else语句语法:

if条件:

代码块1else:

代码块2说明:如果条件为True,执行代码块1;否则执行代码块2。———————————————————age=16ifage>=18:print("你已经成年了!")else:print("你还未成年!")———————————————————多分支结构:if...elif...else语句语法:if条件1:

代码块1

elif

条件2:

代码块2

……

elif

条件n:

代码块nelse:

代码块3说明:依次判断条件,如果某个条件为True,则执行对应的代码块;如果所有条件都不满足,则执行else代码块。—————————score=85ifscore>=90:print("优秀")elifscore>=80:print("良好")elifscore>=60:print("及格")else:print("不及格")—————————Python分支结构注意事项1.缩进Python使用缩进来区分代码块,同一代码块内的语句必须保持相同的缩进在if、elif和else语句之后,相应的代码块必须正确缩进。通常使用4个空格(PEP8标准)进行缩进(避免使用Tab键)。错误的缩进会导致IndentationError。2.逻辑顺序if、elif和else语句的顺序——条件将从上到下依次检查,一旦找到满足条件的分支,就会执行该分支的代码块,并跳过其他分支。应将最可能的条件放在最前面,以提高代码效率。3.条件表达式确保条件表达式正确,并且不会引发错误(如除以零、未定义变量等);确保避免冗余条件,避免不必要的检查。可以使用括号来明确条件表达式的优先级,以提高代码的可读性。4.避免嵌套过深分支结构中可以嵌套另一个分支结构,但应避免过度嵌套,以保持代码的可读性和易维护性。5.使用elif而不是多个if如果需要多个条件判断,并且每个条件互斥,应使用if-elif-else结构而不是多个if语句——避免不必要的条件检查,提高效率。方法一:使用二分支结构实现方法二:使用多分支结构实现0102实例:用户登录验证correct_username="admin"correct_password="123456"

username=input("请输入用户名:")password=input("请输入密码:")

ifusername==correct_username:

ifpassword==correct_password:print("登录成功!")

else:print("密码错误")else:print("用户名不存在")correct_username="admin"correct_password="123456"

username=input("请输入用户名:")password=input("请输入密码:")

ifusername==correct_usernameandpassword==correct_password:print("登录成功!")elifusername==correct_usernameandpassword!=correct_password:print("密码错误")else:print("用户名不存在")03循环结构遍历循环:for语句for循环用于遍历序列(如列表、元组、字符串、字典、集合或范围)中的元素。基本语法如下:

for变量in可迭代对象:

代码块说明:遍历可迭代对象(如列表、字符串、范围等),依次执行代码块。在每次迭代中,变量会被赋予可迭代对象中的下一个元素,直到遍历完所有元素。———————————————————foriinrange(5):print(i,end='')#end=''表示用空格来连接后面的输出

#输出:01234———————————————————条件循环:while语句while循环在给定条件为真时重复执行代码块。基本语法:while条件:

代码块说明:当条件为True时,重复执行代码块;直到条件为False时退出循环。———————————————————#使用while循环计算1到10的和total=0i=1whilei<=10:total+=i

i+=1print(total)#输出:55———————————————————————————————————#使用for循环计算1到10的和total=0foriinrange(1,11):total+=iprint(total)#输出:55————————————————实例:计算斐波那契数列的前N项和N=int(input("请输入一个正整数N:"))

a,b=0,1#初始化斐波那契数列的前两项和累加和sum_fibonacci=a+b#初始化斐波那契数列的前两项的累加和count=2#初始化计数器为2,因为已经计算了前两项(0和1)

#使用while循环计算斐波那契数列的前N项和whilecount<N:

next_term=a+b#计算下一项的数据

sum_fibonacci+=next_term#将下一项加到累加和中a,b=b,next_term#更新前两项为下一轮循环做准备count+=1#增加计数器

#输出结果print(f"斐波那契数列的前{N}项和是:{sum_fibonacci}")04循环控制:break和continue循环控制:break和continue0102break语句continue语句作用:用于立即终止当前循环,并跳出循环体,继续执行循环之后的代码。foriinrange(5):ifi==2:breakprint(i,end='')#输出:01作用:用于跳过当前迭代的剩余代码,直接进入下一次循环。foriinrange(5):ifi==2:continueprint(i,end='')#输出:013405异常处理异常处理在Python中,可以使用try、except、else和finally这几个关键词组成一个包容性很好的程序,通过捕捉和处理异常,加强程序的健壮性。用try可以检测语句块中的错误,从而让except语句捕获异常信息并处理。try:

语句块1

#需要检测异常的代码块,这里的代码可能会抛出异常except<异常名称1>:

语句块2

#若语句块1中抛出<异常名称1>,则执行这里的代码[except<异常名称2>:

语句块3]

#若语句块1中抛出<异常名称2>,则执行这里的代码#可以有多个except块来处理不同类型的异常[else:

语句块4]

#如果没有任何异常发生,则执行这里的代码[finally:

语句块5]

#无论是否发生异常,都会执行这里的代码块

(通常用于清理资源,如关闭文件、释放锁等)try...except语法如下:异常处理异常名称可以是Python中已定义的异常类,也可以是用户自定义的异常类。except语句和finally语句都不是必须的,它们是否必要取决于具体的程序需求和上下文。在大多数情况下,至少应该编写一个except子句来处理潜在的异常,或者编写一个finally子句来执行清理操作,否则try就没有意义了。except语句可以有多个,分别用于处理不同类型的异常,但程序只能执行到其中一个,也就是说如果其中一个异常已经处理就不会再处理

温馨提示

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

评论

0/150

提交评论