Python编程基础与应用 第2版 课件 第2章 Python基础语法和简单运算_第1页
Python编程基础与应用 第2版 课件 第2章 Python基础语法和简单运算_第2页
Python编程基础与应用 第2版 课件 第2章 Python基础语法和简单运算_第3页
Python编程基础与应用 第2版 课件 第2章 Python基础语法和简单运算_第4页
Python编程基础与应用 第2版 课件 第2章 Python基础语法和简单运算_第5页
已阅读5页,还剩174页未读 继续免费阅读

下载本文档

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

文档简介

顺序结构和单分支选择结构的应用《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录顺序结构if单分支结构含义和语法if单分支结构示例if单分支结构的常见错误及注意事项顺序结构01顺序结构的含义程序语言在执行时,一共有三种结构:1)顺序结构:语句顺序执行。2)分支结构:到某个节点后,根据条件选择相应语句或语句块执行。3)循环结构:根据判断条件,循环执行相应语句或语句块。顺序结构顾名思义,即代码由上至下执行,没有分支也没有循环。顺序结构的特点和应用顺序结构的示例——基本计算#计算圆的面积radius=5pi=3.14159area=pi*radius**2print("半径为",radius,"的圆的面积是:",area)#以下是运行结果半径为5的圆的面积是:78.53975顺序结构的示例——多步骤数据处理#数据处理流程data=[12,45,23,67,34,89,56]#步骤1:计算平均值average=sum(data)/len(data)print("平均值:",average)#步骤2:找出最大值maximum=max(data)print("最大值:",maximum)#步骤3:排序数据sorted_data=sorted(data)print("排序后的数据:",sorted_data)if单分支结构含义和语法02Python中的选择结构类型if语句:单分支选择if-else语句:双分支选择if-elif-else语句:多分支选择嵌套if语句:在if代码块中嵌套另一个if语句三元运算符:简化版的条件表达式本次课主要介绍这部分的知识

if分支结构语法格式选择结构也叫分支结构,可以根据条件来控制代码的执行分支。

Python中使用if语句来实现分支结构。分支结构包含多种形式:单分支、双分支和多分支。1)条件表达式可以是关系表达式、逻辑表达式、算术表达式等。2)语句/语句块可以是单个语句,也可以是多个语句,多个语句的缩进必须对齐一致。

if(条件表达式):语句/语句块if单分支结构流程图

当条件表达式的值为真(True)时,执行if后的语句,否则不做任何操作,控制将转到if语句的结束点。条件语句块真假if单分支结构使用要点(1)条件表达式可以是比较运算、逻辑运算或返回布尔值的任何表达式结果为True时执行代码块,False时跳过(2)代码块必须缩进(通常4个空格)同一代码块必须保持相同缩进级别代码块可以包含任意多行语句(3)冒号(:)if语句末尾必须有冒号这是Python语法要求,表示代码块开始if条件表达式:#条件为真时执行的代码块

#注意缩进(通常4个空格)if单分支结构示例03if单分支示例——基本数值比较#检查温度是否过高temperature=38iftemperature>37.5:print("体温偏高,请注意!")if单分支示例——逻辑运算组合#复合条件判断score=85attendance=0.95ifscore>=80andattendance>=0.9:print("符合奖学金申请条件")if单分支示例——布尔变量直接判断#使用布尔标志is_weekend=Trueifis_weekend:print("今天是周末,好好休息吧!")使用单分支结构判断是否成年

用户输入一个数,使用if判断age是否大于等于18,满足条件,打印‘我已经成年’。

测试结果如下:age=int(input(‘输入你的年龄:’))print('---if判断---')ifage>=18:print('我已经成年')输入你的年龄:28---if判断---我已经成年if单分支结构的常见错误及注意事项04注意事项1)每个if条件后要使用冒号(:),表示接下来是满足条件后要执行的语句。2)使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。3)在C语言或者JAVA语言中往往会有switch-case条件语句,但是在Python中没有switch-case语句。4)代码中的input()函数用来获取用户输入的字符。int()函数把字符转换为整数格式。常见错误忘记冒号:if语句末尾必须加冒号#错误写法ifx>0print("正数")#正确写法ifx>0:print("正数")常见错误缩进错误:代码块必须正确缩进#错误写法(缩进不一致)ifcondition:print("A")#没有缩进

print("B")#缩进不一致#正确写法ifcondition:print("A")print("B")常见错误误用赋值(=)代替比较(==)#错误写法(实际上是赋值,不是比较)ifx=10:print("x等于10")#正确写法ifx==10:print("x等于10")感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件双分支选择结构的应用制作:课程编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录If双分支结构含义和语法If双分支结构示例If双分支结构的常见错误及注意事项If双分支结构含义和语法01Python中的选择结构类型if语句:单分支选择if-else语句:双分支选择if-elif-else语句:多分支选择嵌套if语句:在if代码块中嵌套另一个if语句三元运算符:简化版的条件表达式本次课主要介绍这部分的知识

if双分支结构语法格式if语句双分支结构的语法形式如下:

if条件表达式:#条件为True时执行的代码块else:

#条件为False时执行的代码块

if双分支结构流程图当条件表达式的值为真(True),即满足条件时,执行if后的语句,否则执行else后面的语句if单分支结构使用要点(1)条件表达式可以是任何返回布尔值的表达式包括比较运算、逻辑运算、成员运算等(2)代码块两个代码块都必须缩进(通常4个空格)每个代码块可以包含多行语句缩进必须一致(3)冒号(:)if和else语句末尾都必须有冒号这是Python语法要求,表示代码块开始If双分支结构示例02If双分支示例——基本数值比较#判断数字正负num=int(input("请输入一个整数:"))ifnum>=0:print("这是一个非负数")else:print("这是一个负数")If双分支示例——登录验证#简单的用户名密码验证correct_username="admin"correct_password="123456"username=input("请输入用户名:")password=input("请输入密码:")ifusername==correct_usernameandpassword==correct_password:print("登录成功!")else:print("用户名或密码错误!")If双分支示例——登录验证If双分支示例——奇偶数判断#判断数字的奇偶性number=int(input("请输入一个整数:"))ifnumber%2==0:print(f"{number}是偶数")else:print(f"{number}是奇数")If双分支示例——成绩及格判断#判断考试成绩是否及格score=float(input("请输入你的考试成绩:"))ifscore>=60:print("恭喜你,考试及格了!")else:print("很遗憾,考试不及格。")If双分支示例——闰年判断#判断闰年year=int(input("请输入年份:"))if(year%4==0andyear%100!=0)or(year%400==0):print(f"{year}年是闰年")else:print(f"{year}年不是闰年")(1)能被4整除但不能被100整除的年份是闰年:例如,1996年、2004年、2008年、2012年、2016年、2020年等,这些年份都能被4整除,且不能被100整除,因此是闰年。(2)能被400整除的年份也是闰年:例如,1600年、2000年等,这些年份虽然能被100整除,但也能被400整除,因此同样是闰年。使用双分支结构判断买票上车ticket初始化赋值‘有票’,通过if判断是否满足条件,若不满足条件通过else来打印“没有车票,不能上车”,若满足条件则打印“有车票,可以上车”。

测试结果如下:ticket='有票'#使用1个“=”进行赋值ifticket=='有票':#使用2个“=”进行判断

print('有车票,可以上车')else:print('没有车票,不能上车')有车票,可以上车总结if双分支结构是编程中最基础也最常用的控制结构之一,它使程序能够根据不同的条件执行不同的操作,大大增强了程序的灵活性。在实际开发中,双分支结构经常与其他控制结构(如循环结构)结合使用,构建更复杂的程序逻辑。If双分支结构的常见错误及注意事项03注意事项1)每个if条件后要使用冒号(:),表示接下来是满足条件后要执行的语句。2)使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。3)代码中的input()函数用来获取用户输入的字符。int()函数把字符转换为整数格式。常见错误忘记冒号:else语句末尾必须加冒号#错误写法ifx>0:print("正数")elseprint("非正数")#正确写法ifx>0:print("正数")else:print("非正数")常见错误缩进不一致:两个代码块缩进必须相同#错误写法(缩进不一致)ifcondition:print("A")print("B")#缩进不一致else:print("C")#正确写法ifcondition:print("A")print("B")else:print("C")常见错误不必要的嵌套:简单的双分支不需要嵌套#不推荐写法(不必要的嵌套)ifx>0:ify>0:print("x和y都大于0")else:print("x大于0但y不大于0")else:print("x不大于0")#推荐写法(使用逻辑运算符)ifx>0andy>0:print("x和y都大于0")elifx>0:print("x大于0但y不大于0")else:print("x不大于0")常见错误误用赋值(=)代替比较(==)#错误写法(实际上是赋值,不是比较)ifx=10:print("x等于10")else:print("x不等于10")#正确写法ifx==10:print("x等于10")else:print("x不等于10")感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件多分支选择结构的应用制作:课程编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录If多分支结构含义和语法If多分支结构示例If多分支结构的常见错误及注意事项If多分支结构含义和语法01Python中的选择结构类型if语句:单分支选择if-else语句:双分支选择if-elif-else语句:多分支选择嵌套if语句:在if代码块中嵌套另一个if语句三元运算符:简化版的条件表达式本次课主要介绍这部分的知识

if多分支结构语法格式if语句多分支结构的语法形式如下:

if条件1:

#条件1为True时执行的代码块elif条件2:

#条件2为True时执行的代码块elif条件3:

#条件3为True时执行的代码块...else:

#以上条件都不满足时执行的代码块

if多分支结构流程图多分支结构if语句的作用就是根据不同条件表达式的值确定执行相应的语句(块)If多分支结构核心要点If多分支结构示例02If多分支示例——成绩等级评定score=float(input("请输入成绩(0-100):"))ifscore>=90:print("优秀")elifscore>=80:print("良好")elifscore>=70:print("中等")elifscore>=60:print("及格")else:print("不及格")If多分支示例——BMI指数分类height=float(input("请输入身高(m):"))weight=float(input("请输入体重(kg):"))bmi=weight/(height**2)ifbmi<18.5:print("偏瘦")elif18.5<=bmi<24:print("正常")elif24<=bmi<28:print("超重")elif28<=bmi<32:print("肥胖")else:print("严重肥胖")If多分支示例——月份季节判断month=int(input("请输入月份(1-12):"))if3<=month<=5:print("春季")elif6<=month<=8:print("夏季")elif9<=month<=11:print("秋季")elifmonth==12or1<=month<=2:print("冬季")else:print("无效月份")#以下是运行结果请输入月份(1-12):5春季请输入月份(1-12):10秋季If多分支示例——闰年判断1#判断闰年year=int(input("请输入年份:"))if(year%4==0andyear%100!=0)or(year%400==0):print(f"{year}年是闰年")else:print(f"{year}年不是闰年")(1)能被4整除但不能被100整除的年份是闰年:例如,1996年、2004年、2008年、2012年、2016年、2020年等,这些年份都能被4整除,且不能被100整除,因此是闰年。(2)能被400整除的年份也是闰年:例如,1600年、2000年等,这些年份虽然能被100整除,但也能被400整除,因此同样是闰年。If多分支示例——闰年判断2输入一个年份数字,判断这个年份是否公历闰年。公历闰年的计算方法:普通年能被4整除且不能被100整除的为闰年(如2004年就是闰年,1900年不是闰年)。世纪年能被400整除的是闰年(如2000年是闰年,1900年不是闰年)。years=int(input("请输入查询的年份:"))if(years%4==0andyears%100!=0):print(years,"是闰年")elif(years%400==0):print(years,"是闰年")else:print(years,"不是闰年")If多分支示例——闰年判断2输入不同的数字,它的调试结果如下请输入查询的年份:20102010不是闰年请输入查询的年份:20042004是闰年1)代码“years%4==0”中的%表示求模运算,也就是计算除法的余数,比如5%2就得到1,2004%4就得到0。2)代码“!=”表示逻辑判断的不等于。总结if多分支结构是Python中处理复杂条件判断的强大工具,合理使用可以使代码更加清晰和易于维护。在实际开发中,应根据具体业务逻辑设计适当的条件判断顺序,避免不必要的嵌套和重复判断。If多分支结构的常见错误及注意事项03注意事项1)每个if条件后要使用冒号(:),表示接下来是满足条件后要执行的语句。2)使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。3)代码中的input()函数用来获取用户输入的字符。int()函数把字符转换为整数格式。常见错误条件顺序错误#错误示例:条件顺序不当ifscore>=60:print("及格")elifscore>=70:print("中等")#永远不会执行#正确顺序应该从高到低(或者从低到高)判断常见错误遗漏冒号#错误写法ifx>0print("正数")#正确写法ifx>0:print("正数")常见错误不必要的嵌套#不推荐写法ifcondition1:ifcondition2:...#推荐使用多分支结构替代深层嵌套常见错误滥用else#不推荐写法ifcondition1:...else:ifcondition2:...#推荐使用elififcondition1:...elifcondition2:...常见错误避免过于复杂的条件表达式#不推荐写法if(a>band(c<dore==f))ornotg:...#推荐使用elifcondition1=a>band(c<dore==f)condition2=notgifcondition1orcondition2:...感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件if的嵌套选择结构的应用制作:课程编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录if的嵌套结构含义和语法if的嵌套结构示例三元运算符的示例if的嵌套结构的常见错误及注意事项if的嵌套结构含义和语法01Python中的选择结构类型if语句:单分支选择if-else语句:双分支选择if-elif-else语句:多分支选择嵌套if语句:在if代码块中嵌套另一个if语句三元运算符:简化版的条件表达式本次课主要介绍这部分的知识

if的嵌套结构语法格式if嵌套结构是指在一个if语句的代码块中再包含另一个if语句的结构。这种结构允许我们在满足外层条件的情况下,再进行更细致的条件判断,实现多层次的逻辑控制。语法形式如下:

if外层条件:

#外层条件成立时执行的代码

if内层条件:

#内层条件成立时执行的代码

else:

#内层条件不成立时执行的代码else:

#外层条件不成立时执行的代码if的嵌套结构使用要点缩进规则:每个嵌套层级都需要增加一级缩进(通常4个空格)同级代码块必须保持相同的缩进量执行顺序:先判断外层条件外层条件为True时才会判断内层条件外层条件为False时跳过整个嵌套结构嵌套深度:理论上可以无限嵌套但实践中建议不超过3层,否则影响可读性if的嵌套结构示例02if的嵌套示例——简单数值判断num=15ifnum>10:print("数字大于10")ifnum>20:print("且大于20")else:print("但不大于20")else:print("数字不大于10")if的嵌套示例——登录验证系统username=input("请输入用户名:")password=input("请输入密码:")ifusername=="admin":ifpassword=="123456":print("登录成功!")else:print("密码错误!")else:print("用户名不存在!")if的嵌套示例——购物折扣系统is_member=Truepurchase_amount=1200ifis_member:

ifpurchase_amount>1000:discount=0.8elifpurchase_amount>500:discount=0.9else:discount=0.95else:

ifpurchase_amount>1000:discount=0.9else:discount=1.0print(f"您的最终折扣是:{discount}")if的嵌套示例——使用If嵌套判断乘客坐火车的验票和安检工作ticket=int(input('是否有票?请输入1(表示有)或者0(表示无):'))knife=int(input('是否携带刀具?请输入1(表示有)或者0(表示无):'))ifticket==1:print('有车票,请安检!')

ifknife==1:print('有车票,但携带刀具,未通过安检,不能进站!')else:print('有车票,没携带刀具,通过安检,可以进站!')else:print('无票,不能进站!')众所周知,乘客进站前需要先验票,再通过安检,最后才能上车。在程序中,后面的判断条件是在前面的判断成立的基础上进行if的嵌套示例——使用If嵌套判断乘客坐火车的验票和安检工作是否有票?请输入1(表示有)或者0(表示无):1是否携带刀具?请输入1(表示有)或者0(表示无):0有车票,请安检!有车票,没携带刀具,通过安检,可以进站!输入不同的数字,它的调试结果如下三元运算符的示例03三元运算符简介三元运算符(也称为条件表达式)是Python中一种简洁的条件判断表达式,它允许在一行代码中实现简单的if-else逻辑。三元运算符特别适合需要根据条件选择不同值的场景,可以使代码更加简洁明了。基本语法格式如下:value_if_trueifconditionelsevalue_if_false语法说明:condition:布尔表达式,结果为True或Falsevalue_if_true:当condition为True时返回的值value_if_false:当condition为False时返回的值三元运算符使用示例——基本数值比较x=10y=20max_num=xifx>yelseyprint(max_num)#输出:20三元运算符使用示例——奇偶数判断num=7result="偶数"ifnum%2==0else"奇数"print(result)#输出:奇数三元运算符使用示例——登录状态显示is_logged_in=Truestatus="已登录"ifis_logged_inelse"未登录"print(status)#输出:已登录三元运算符使用示例——三元运算符与if-else语句的对比#使用if-else语句x=10y=20ifx>y:max_num=xelse:max_num=y#使用三元运算符x=10y=20max_num=xifx>yelsey三元运算符使用的注意事项可读性优先:虽然三元运算符简洁,但不要过度使用,特别是避免多层嵌套只适合简单逻辑:复杂的条件判断还是应该使用完整的if-else语句不要滥用:如果条件表达式太长或太复杂,会降低代码可读性运算符优先级:三元运算符的优先级较低,复杂表达式建议使用括号明确优先级if的嵌套结构的常见错误及注意事项04注意事项缩进错误:内层if必须比外层if多一级缩进同级代码块缩进必须一致逻辑混乱:嵌套过多会导致代码难以理解建议超过3层嵌套时考虑重构条件重复:内层条件可能隐含外层条件,导致冗余判断注意事项可读性问题:适当添加注释说明嵌套逻辑复杂的嵌套结构可以考虑拆分为函数else匹配问题:else总是与最近的if匹配必要时使用括号明确匹配关系限制嵌套深度:尽量控制在3层以内超过3层考虑使用函数封装或逻辑重组建议使用elif简化结构:#不推荐ifcondition1:ifcondition2:...#推荐ifcondition1andcondition2:...感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件for循环的应用制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录for循环的作用与语法for循环的应用示例for循环的作用与语法01Python中的循环结构类型for循环while循环循环和elsebreak和continue语句循环的嵌套特殊循环技巧本次课主要介绍这部分的知识

for语法格式for循环是Python中最常用的循环结构之一,用于迭代遍历序列(如列表、元组、字符串等)或其他可迭代对象。与while循环不同,for循环不需要预先设置循环条件,而是自动处理迭代过程。for临时变量in可迭代对象:

#循环体代码块

#(注意缩进)for迭代变量in可迭代对象:

#循环体else:

#可选的else块,当循环正常结束时执行

for语法格式列表中的元素代码块下一个元素如果列表中没有元素特点:自动迭代,无需手动管理计数器适用于已知迭代次数的场景可遍历任何可迭代对象比while循环更简洁安全(不易造成无限循环)range函数

Python提供了一个内置range函数,它可以生成一个指定范围的数字序列,经常与for循环联合使用。它的格式如下1)start:计数从start开始。默认是从0开始。如range(5)等价于range(0,5)。2)stop:计数到stop结束,但不包括stop。如range(0,5)是[0,1,2,3,4]没有5。3)step:步长,默认为1。如range(0,5)等价于range(0,5,1)结果为[0,1,2,3,4]。range(0,5,2)步长是2,则它的结果为[0,2,4]。range(start,stop[,step])for循环的应用示例02

for循环的应用——遍历列表#计算列表中数字的平方和numbers=[1,2,3,4,5]sum_of_squares=0fornuminnumbers:sum_of_squares+=num**2print(f"平方和是:{sum_of_squares}")#输出:平方和是:55

for循环的应用——遍历字符串forcharin"Python":print(char)1.字符串"Python"是可迭代序列,内含6个字符:P、y、t、h、o、n2.循环会依次把序列里的单个字符赋值给变量char,每赋值一次执行一轮循环体,打印当前变量char存储的字符。

for循环的应用——使用range()函数#打印0-4foriinrange(5):print(i)#指定起始和结束(包含起始,不包含结束)foriinrange(2,5):print(i)#输出2,3,4#指定步长foriinrange(0,10,2):print(i)#输出0,2,4,6,8for循环的应用——使用range()函数

利用for循环求1-100中所有奇数的和。如果一个数除以2的余数不是0,则为奇数。可以利用这一个计算技巧来完成sum_odd=0#初始化和的变量,为0foriinrange(1,101):ifi%2!=0:#如果除以2的余数不是0,则为奇数

sum_odd=sum_odd+iprint('1-100中所有奇数的和:%d'%sum_odd)#输出结果#1-100中所有奇数的和:2500

for循环的应用——使用enumerate()同时获取索引和值fruits=['apple','banana','cherry']forindex,fruitinenumerate(fruits):print(f"Index{index}:{fruit}")#enumerate()常用于for循环,不用自己定义计数器,括号里参数可以是列表、字符串、元组等可遍历对象程序输出

for循环的应用——结合zip()并行迭代names=["张三","李四","王五"]ages=[25,30,35]forname,ageinzip(names,ages):print(f"{name}今年{age}岁")zip()接收多个可迭代对象(列表、字符串、元组等),按位置配对打包成元组,最短序列遍历完就停止。#输出:#张三今年25岁#李四今年30岁#王五今年35岁感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件while循环的应用制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录while循环的作用和语法while循环的常用示例while、for循环和elsewhile循环的作用和语法01Python中的循环结构类型for循环while循环循环和elsebreak和continue语句循环的嵌套特殊循环技巧本次课主要介绍这部分的知识

while语法格式while循环是Python中的另一种循环结构,它会在给定的条件为真时重复执行代码块。与for循环不同,while循环适用于不确定需要迭代多少次的情况,而是基于条件判断来决定是否继续循环。它的语法格式如下:while条件表达式:#循环体

#执行语句while条件表达式:#循环体else:#可选的else块,当循环条件变为False时执行while流程图

请注意:while循环的条件是条件表达式。在for循环语句中不需要指定循环结束的条件,while循环必须指定循环结束的条件,否则就会无限循环下去。这是两者的一个重要区别条件表达式循环语句(块)while语句的后继语句循环语句(块)真假特点:适合不确定循环次数的场景需要手动控制循环条件,否则可能造成无限循环比for循环更灵活,可以处理更复杂的循环条件常用于事件监听、游戏循环等场景while循环的常用示例02while循环使用示例——基础计数循环程序循环5次,每次输入一个数字,然后打印出来var=1#变量初始为1whilevar<=5:number=int(input('第%s次,输入一个数字:'%(var)))print('你输入的数字是:%d'%number)var=var+1#变量递增,每次增加1第1次,输入一个数字:90你输入的数字是:90第2次,输入一个数字:40你输入的数字是:40第3次,输入一个数字:35你输入的数字是:35第4次,输入一个数字:10你输入的数字是:10第5次,输入一个数字:70你输入的数字是:70while循环使用示例——基础计数循环count=0whilecount<5:print(f"当前计数:{count}")count+=1#重要:必须更新条件变量#输出:#当前计数:0#当前计数:1#当前计数:2#当前计数:3#当前计数:4while循环使用示例——用户输入验证password=""whilepassword!="123456":password=input("请输入密码:")print("密码正确,欢迎登录!")1.password="":定义初始密码为空字符串2.while条件:条件为True就持续循环3.password!="123456"含义:输入的密码不等于123456,条件正确,继续循环4.input():接收用户键盘输入,存入变量password5.只有当password=="123456",条件变为False,循环结束,执行最后一行打印while循环使用示例——处理列表直到为空tasks=['任务1','任务2','任务3','任务4']whiletasks:current_task=tasks.pop(0)print(f"正在处理:{current_task}")#输出正在处理:任务1正在处理:任务2正在处理:任务3正在处理:任务4while循环使用示例——移除列表的所有偶数list_numbers=[1,2,3,4,5,6,7,8,9,10]index=0whileindex<len(list_numbers):#判断条件:index小于列表的元素个数

iflist_numbers[index]%2==0:list_numbers.pop(index)else:index+=1print(list_numbers)#结果如下

#[1,3,5,7,9]while循环使用示例——猜数字游戏importrandomtarget=random.randint(1,100)guess=0whileguess!=target:guess=int(input("猜一个1-100的数字:"))ifguess<target:print("猜小了")elifguess>target:print("猜大了")print("恭喜你猜对了!")while循环使用示例——菜单系统whileTrue:print("\n1.查询余额")print("2.存款")print("3.取款")print("4.退出")

choice=input("请选择操作:")

ifchoice=="1":print("余额查询中...")elifchoice=="2":print("存款处理中...")elifchoice=="3":print("取款处理中...")elifchoice=="4":print("感谢使用,再见!")breakelse:print("无效输入,请重新选择")while与for选择建议用for循环当:需要遍历已知序列循环次数确定不需要复杂条件判断用while循环当:循环次数不确定需要基于复杂条件循环需要用户交互控制循环处理实时数据流循环和else03循环和else的简介

前面学习if语句的时候,会在if条件语句的范围之外发现else语句。其实,除了判断语句,Python中的while和for循环中也可以使用else语句。在python中,while…else在循环条件为false时执行else语句块。独特特性:Python的循环结构可以带有else子句,这是许多其他编程语言不具备的特性执行时机:当循环正常完成(未被break语句中断)时,else子句会被执行设计目的:提供一种简洁的方式来检测循环是否完整执行完毕,常用于搜索场景循环和else的语法格式#for-else语法for变量in可迭代对象:

#循环体代码else:

#当循环正常结束时执行的代码#while-else语法while条件:

#循环体代码else:

#当循环条件变为False时执行的代码循环和else的示例——奖励鸡腿假设读者通过跑步来锻炼身体,培养意志力。跑完3圈奖励自己一个鸡腿!quanshu=1whilequanshu<=3:print(f"跑完第{quanshu}圈")quanshu+=1else:print("自我奖励1个鸡腿!")#结果如下#跑完第1圈#跑完第2圈#跑完第3圈#自我奖励1个鸡腿!在这个例子中,变量quanshu从1开始,并在每次循环迭代后增加1,直到它不再满足条件quanshu<=3(即quanshu变成4)。在这种情况下,循环会正常结束,并且会执行else子句。循环和else的示例——搜索场景(未找到时执行else)numbers=[2,4,6,8,10]search=5fornuminnumbers:ifnum==search:print(f"找到数字{search}")breakelse:print(f"未找到数字{search}")#输出:未找到数字5循环和else的示例——质数判断num=11i=2whilei*i<=num:ifnum%i==0:print(f"{num}不是质数")breaki+=1else:print(f"{num}是质数")#输出:11是质数质数(PrimeNumber)是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。换句话说,质数只有两个正因数:1和它本身。最小的质数:2是唯一的偶质数(因为其他偶数都能被2整除)。常见质数:3、5、7、11、13、17、19、23、29等。非质数示例:4(可以被2整除),6(可以被2和3整除)判断一个数是否为质数,可以尝试用小于它的所有正整数(从2开始)去除它,如果都不能整除,那么这个数就是质数。循环和else的示例——用户输入验证max_attempts=3attempts=0whileattempts<max_attempts:password=input("请输入密码:")ifpassword=="secret":print("登录成功!")breakattempts+=1else:print("尝试次数过多,账户已锁定")感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件break和continue语句制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录break和continue的作用和语法break和continue的类比理解break和continue的常用示例break和continue的注意事项break和continue的作用和语法01Python中的循环结构类型for循环while循环循环和elsebreak和continue语句循环的嵌套特殊循环技巧本次课主要介绍这部分的知识break语句语法格式break语句:立即终止当前循环,跳出循环体,执行循环后的代码。它的语法格式如下:while条件:

#代码

if某个条件:break#代码for变量in可迭代对象:

#代码

if某个条件:break

#代码continue语句语法格式continue语句:跳过当前迭代的剩余部分,直接进入下一次循环迭代。它的语法格式如下:while条件:

#代码

if某个条件:continue

#代码for变量in可迭代对象:

#代码

if某个条件:continue

#代码流程图(对比)条件语句真条件假break条件语句真条件假continuebreak和continue的类比理解02类比理解——自助餐厅用餐想象你在一家自助餐厅用餐(循环),面前有各种菜品(迭代项)。continue就像当你看到不喜欢的菜(如胡萝卜)时,直接跳过它去查看下一个菜品,而不把它放到盘子里。你仍在继续用餐过程,只是跳过了某些选项。而break则像是你已经找到了最喜欢的甜点(如巧克力蛋糕),一旦把它放到盘子里,你就决定结束取餐过程,不再查看后面的菜品了,直接去结账(退出循环)。类比理解——读书比如读书时,continue是快速浏览不感兴趣的章节,但仍继续读后面的内容;break则是读到某章节直接合上书,不再读后面的部分。这些类比帮助我们理解:continue是"跳过这次,继续下次",而break是"完全停止,不再继续"。break和continue的常用示例03使用示例——搜索时找到目标后立即退出#在列表中查找数字5,找到后立即退出循环numbers=[1,3,5,7,9]fornuminnumbers:ifnum==5:print("找到5了!")breakprint(f"当前检查的数字是:{num}")fornuminnumbers:循环遍历列表里的数字,逐个取出ifnum==5:判断当前取出的数字是不是5break:一旦执行break,循环直接结束使用示例——跳过特定值的处理#打印1-10之间的奇数foriinrange(1,11):ifi%2==0:continueprint(i)使用示例——处理数据时跳过无效项#计算列表中正数的平均值,跳过负数和零numbers=[1,-2,3,0,4,-5]total=0count=0fornuminnumbers:

ifnum<=0:continuetotal+=numcount+=1print(f"正数的平均值是:{total/count}")使用示例——游戏循环中的退出条件#简单的猜数字游戏importrandomtarget=random.randint(1,100)whileTrue:guess=int(input("猜一个1-100的数字:"))ifguess==target:print("恭喜你猜对了!")breakprint("太大了!"ifguess>targetelse"太小了!")break和continue的注意事项04break和continue的共同点与不同点它们的共同点:continue语句和break语句都可以用在while和for循环中。

它们的不同点:1)continue语句跳出本次循环,而break跳出整个循环。2)continue语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。3)break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break和continue的使用注意事项1.作用范围限制只能用于循环内部:break和continue只能在for或while循环中使用,在循环外部使用会导致语法错误不影响外层循环:在嵌套循环中,break和continue只影响它们所在的最内层循环2.与else子句的交互break会跳过else块:循环的else子句只在循环正常完成(非break退出)时执行continue不影响else块:continue不会影响else子句的执行break和continue的使用注意事项3.在特定结构中的行为try-finally中的行为:break/continue在try块中时,会先执行finally块再执行跳转在finally中使用break/continue通常是不允许的(语法错误)4.可读性与维护性避免过度使用:过多使用会使代码逻辑难以跟踪考虑替代方案:有时用条件判断重构代码会更清晰感谢聆听制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件循环的嵌套应用制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。

书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录循环的嵌套的作用和语法循环的嵌套的常用示例循环的嵌套的注意事项特殊循环的使用技巧循环的嵌套的作用和语法01Python中的循环结构类型for循环while循环循环和elsebreak和continue语句循环的嵌套特殊循环技巧本次课主要介绍这部分的知识循环嵌套的语法格式循环嵌套是指在一个循环内部包含另一个循环,通常用于处理多维数据(如二维列表、矩阵)、排列组合问题,或者需要逐层遍历的场景。for循环也可以嵌套while循环。while循环也可以嵌套for循环。它的语法格式如下:for外层变量in外层可迭代对象:for内层变量in内层可迭代对象:

循环体while外层条件:while内层条件:

循环体循环嵌套的流程图外层循环条件内层循环语句

温馨提示

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

最新文档

评论

0/150

提交评论