《Python语言程序设计》 课件 第3章 分支结构_第1页
《Python语言程序设计》 课件 第3章 分支结构_第2页
《Python语言程序设计》 课件 第3章 分支结构_第3页
《Python语言程序设计》 课件 第3章 分支结构_第4页
《Python语言程序设计》 课件 第3章 分支结构_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

第3章分支结构第3章

分支结构逻辑判断单分支结构双分支结构多分支结构分支结构的嵌套

实际问题中,很多时候需要根据给定的条件来决定做什么:条件满足时做什么,条件不满足时做什么。如果外面正在下雨,那么出门的时候需要带雨伞。根据体质指数,判断身体状态(偏瘦、正常、偏胖等)。

这些问题的特点是需要对给定的条件进行分析、比较和判断,并根据判断结果采取不同的操作。

顺序结构程序是无法解决类似的问题。计算科学中用来描述这种选择现象的重要手段是分支结构,也称选择结构。3.1.1关系运算符3.1逻辑判断

相等

==不等

!=大于

>小于

<大于等于

>=小于等于

<=比较的结果是bool类型:True或FalseTrue和1完全等价,False和0完全等价相当于False:""[]None相当于True:非0的数,非空的字符串,非空列表True==1 #TrueFalse==0 #True""==False #False2==True #False5print(3<5) #>>Trueprint(2<4<6<8) #>>True关系运算符允许连续使用print(2<4>5) #>>Falseb=4<6print(b) #>>Trueprint(b==2) #>>False6用关系运算符将两个式子连接起来的式子称为关系表达式。关系运算符也能比较字符串(按字典序,大小写相关)print(’A’>’a’) #>>False

a="abc"

print(a=="abc") #>>True

print(a=="Abc") #>>False73.1.2逻辑运算1.逻辑运算符notx:x值为True(或相当于True)时,结果为False(或相当于False)x值为False(或相当于False)时,结果为True(或相当于True) not4<5 #False not5 #False not0 #True优先级由高到低:not、and、or100>50and100<200

#>>True100<50and300<200

#>>False

短路计算100>50or100<200

#>>True

短路计算100<50or300<200

#>>Falsenot100<200

#>>FalsenotFalse

#>>TruenotTrue

#>>False6and9

#>>90and9

#>>06or9

#>>60or9

#>>9写出下列条件(1)判断年份year是否为闰年。(year%4==0andyear%100!=0)oryear%400==0(2)判断ch是否为小写字母。'a'<=ch<='z'(3)判断m能否被n整除。m%n==0简单的分支情况,Python语言提供了条件运算符:表达式1

if

表达式

else

表达式23.1.3条件运符例3.1输入两个整数,输出最大值。a=int(input("请输入a的值:"))b=int(input("请输入b的值:"))max=aifa>belsebprint(max)关于Python二分支精简结构的表示,正确的选项是()。A、条件

if表达式1else表达式2B、表达式1if表达式2else条件C、表达式1if条件else表达式2D、表达式1if条件:表达式2else执行以下程序,输入60,输出的结果是()。s=eval(input())k='合格'ifs>=60else'不合格’print(s,k)A、合格B、不合格C、60D、60合格3.1.4身份运算符测试两个变量是否指向同一个对象(占用的内存地址),一样返回True,否则返回False。>>>a=[1,2,3,4]>>>b=[1,2,3,4]>>>id(a)1768334769992>>>id(b)1768333183944>>>aisbFalse>>>a==bTrue3.2.1单分支结构语法(如果...则...)if表达式:

语句块3.2单分支结构注意:(1)表达式后面必须加冒号。(2)可以是任意表达式。(3)句块必须向右缩进,语句块可以是单个语句,也可以是多个语句。当包含多条语句时,多条语句的缩进必须一致即语句块中的语句必须上下对齐。当输入为95、65时,以下2段代码的结果如何?score=int(input("score="))ifscore>=90:

print("Congratuations!")print("Yourscoreis%d"%score)score=int(input("score="))ifscore>=90:

print("Congratuations!")print("Yourscoreis%d"%score)输入95时,程序显示结果:Congratuations!Yourscoreis95输入65时,程序显示结果:Yourscoreis65输入95时,程序显示结果:Congratuations!Yourscoreis95输入65时,没有显示结果例3-2输入一个非零整数,如果其大于零,则输出“正数”;如果小于零,则输出“负数”。程序如下:x=int(input("请输入一个非零整数:"))ifx>0:print("正数")ifx<0:print("负数")键盘输入数字5,以下代码的输出结果是()。n=eval(input("请输入一个整数:"))s=0ifn>=5:

n-=1

s=4ifn<5:

n-=1

s=3print(s)答案:33.2.2双分支结构if表达式:

语句块1else:

语句块2例3-2输入一个非零整数,如果其大于零,则输出“正数”;如果小于零,则输出“负数”。用if...else....改写程序如下:x=int(input("请输入一个非零整数:"))ifx>0:print("正数")ifx<0:print("负数")else:例3.4

输入年份x,判断是否是闰年。分析:年份只要满足下列两个条件之一,就是闰年:(1)年份是4的倍数,且不是100的倍数。(2)年份是400的倍数。如1900年、2022年不是闰年,而2000年、2024年是闰年。x=int(input("请输入年份:"))if(x%100!=0andx%4==0)or(x%400==0):print("%d年是闰年"%x)else:print("%d年不是闰年"%x)例3.5

输入一个整数,判断这个整数是奇数还是偶数。分析:能被2整除的数是偶数,不能被2整除的数是奇数。x=int(input("请输入1个整数:"))ifx%2==0:print("%d是偶数"%x)else:print("%d是奇数"%x)a="123"ifa>"Python":print("再学Python")else:print("初学Python")A、初学PythonB、再学PythonC、没有输出D、执行出错

if表达式1:

语句块1elif表达式2:

语句块2elif表达式3:

语句块3……elif表达式m:

语句块m3.4

多分支结构if...elif...

else是多分支选择结构,从中选择第一个满足条件的情况操作,即多选一。例3.6

输入一个整数,判断是正数、负数或是0。x=int(input("请输入一个整数:"))ifx>0:print("x是正数")elifx<0:print("x是负数")else:print("x是0")例3.7

根据体质指数,判断身体状态(偏瘦、正常、偏胖)。按照中国人的体质特征,BMI指数小于18.5为偏瘦,在18.5到23.9之间为正常,超过在23.9为偏胖。weight=eval(input('请输入以kg为单位的体重值:'))height=eval(input('请输入以m为单位的身高值:'))bmi=weight/pow(height,2)print("你的BMI数值为:{:.2f}".format(bmi),end=",")ifbmi<18.5:print("属于偏瘦")elif18.5<=bmi<=23.9:print("属于正常")else:print("属于偏胖")运行结果:请输入以kg为单位的体重值:70请输入以m为单位的身高值:1.80你的BMI数值为:21.60,属于正常以下代码的执行结果是()。a=75ifa>60:print("ShouldWorkHard!")elifa>70:print("Good")else:print("Excellent")A、执行出错B、ExcellentC、GoodD、ShouldWorkHard!3.5分支结构的嵌套if语句中可以再嵌套if语句。一定要注意不同级别代码块的缩进量,因为缩进量决定了代码的从属关系。if条件

1:

if条件2:

语句块2

#当条件1、2同时为真时,执行语句块2

else:

语句块3

#当条件1为真,条件2为假时,执行语句块3else:

语句块4

#当条件1为假时,执行语句块4考虑一下执行流程:mark=eval(input("请输入成绩:"))if0<=mark<=100:

ifmark<60:

print("不及格")

else:

print("及格")else:

print("输入的成绩格式错误!")例3.9

输入3个整数,输出最大值。算法不唯一,此处用嵌套a=int(input("请输入a的值:"))b=int(input("请输入b的值:"))c=int(input("请输入c的值:"))ifa>b:

温馨提示

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

评论

0/150

提交评论