python分支结构教案_Python分支结构与流程控制

本文详细介绍了Python中的分支结构,包括if语句的基本使用、if与else的配合、if与elif及else的组合使用,以及while循环的运用。通过实例分析了二狗子找女朋友的过程,展示了条件判断在解决实际问题中的应用。文章还探讨了基于条件的退出、break、continue语句在while循环中的作用,并给出了银行取钱程序的逐步优化,强调了死循环的性能损耗问题和for循环的使用,包括for与range()的组合以及for循环的嵌套。
摘要由CSDN通过智能技术生成

分支结构

if 语句

分支结构在任何编程语言中都是至关重要的一环,它最主要的目的是让计算机拥有像人一样的思想,能在不同的情况下做出不同的应对方案,所以if语句不管是在什么时候都是会大量去使用的。我们先来看一下if语句的语法和使用。

#==== if 的使用 ====

'''if 条件判断:

逻辑代码...

if 条件判断:

逻辑代码...

if 条件判断:

逻辑代码...'''tag= 1

if tag == 1:print("判断为真,tag = 1")if tag == 2:print("判断为真,tag = 2")iftag:print('判断为真,tag为True')if nottag:print('判断为真,tag为False')print('执行完毕...')#==== 执行结果 ====

"""判断为真,tag = 1

判断为真,tag为True

执行完毕..."""

可以看到,上面一共有4条if判断,对应的逻辑代码也共有4段(4个print()),从语法层面上来讲Python中只要遇到以冒号 :结尾的语句下一行必须缩进4个空格。(PEP8规范中并不推荐使用tab),在4个空格后的代码便是上面一个冒号的子代码段。

这里只执行了2个逻辑子代码,说明if只在条件为真的情况下执行它自己的子代码段。我们继续来看一个实例分析:

#==== if 实例分析 ====

'''二狗子要找女朋友,

年龄不能大于25岁,这个是前提!!,

身高不能超过170或者体重不能超过60公斤。

请问下面那个符合二狗子的需求?'''xiaoli= {'age':30,'height':158,'weight':90}

xiaohua= {'age':22,'height':190,'weight':50} #从上一章中过来的读者注意,age改为22了。

xiaocui = {'age':22,'height':164,'weight':58}#使用括号,改变优先级。不然会出现bug

if xiaoli['age']<25 and (xiaoli['height']<170 or xiaoli['weight']<60):print("小丽符合二狗子的要求..小丽和二狗子约会了")if xiaohua['age']<25 and (xiaohua['height']<170 or xiaohua['weight']<60):print("小花符合二狗子的要求..小花和二狗子约会了")if xiaocui['age']<25 and (xiaocui['height']<170 or xiaocui['weight']<60):print("小翠符合二狗子的要求..小翠和二狗子约会了")print("执行完毕...")#==== 执行结果 ====

"""小花符合二狗子的要求..小花和二狗子约会了

小翠符合二狗子的要求..小翠和二狗子约会了

执行完毕..."""

if 实例分析

二狗子的做法令二狗子的父母很不满意,他们认为如果和一个姑娘约了会就不该再和其他姑娘继续约会。这是道德问题,如果让女孩子知道了这些事儿,二狗子就会落下一个不好的名声,所以二狗子的父母希望二狗子不要这么做。那么该如何解决呢?

if 与 else

上面遗留问题的我们先来分析一下,只有当二狗子和某一个女孩约会那个女孩不符合二狗子的要求时二狗子才能继续和下一个女孩进行约会,这其中有一个 如果怎么,否则怎样的关系在里面。那么就可以用到if和else的配套使用来解决这个问题,if代表是如果条件成立则执行if语句下的子代码块,而else代表if条件不成立则执行else语句下的子代码块。所以if和else是配套使用的,在同一缩进范畴下的if和else认为是一对。还是先看一下if和else的使用方法,再来解决具体问题:

#==== if 与 else 的使用 ====

'''if 条件判断:

逻辑代码...

else:

逻辑代码...'''tag= 2 #注意tag改成了2

if tag == 1:print("判断为真,tag = 1")else:print("判断为假,tag != 1")iftag:print('判断为真,tag为True')else:print('判断为假,tag为False')print('执行完毕...')#==== 执行结果 ====

"""判断为假,tag != 1

判断为真,tag为True

执行完毕..."""

好了,简单的学习了 if和 else的使用后我们来解决二狗子爸妈的疑虑。

#==== if 与 else 实例分析 ====

'''二狗子要找女朋友,

年龄不能大于25岁,这个是前提!!,

身高不能超过170或者体重不能超过60公斤。

请问下面那个符合二狗子的需求?'''xiaoli= {'age':30,'height':158,'weight':90}

xiaohua= {'age':22,'height':190,'weight':50} #从上一章中过来的读者注意,age改为22了。

xiaocui = {'age':22,'height':164,'weight':58}#使用括号,改变优先级。不然会出现bug

if xiaoli['age']<25 and (xiaoli['height']<170 or xiaoli['weight']<60):print("小丽符合二狗子的要求..小丽和二狗子约会了")else:print("由于小丽不符合二狗子的要求,二狗子决定和小花约会试试..")if xiaohua['age']<25 and (xiaohua['height']<170 or xiaohua['weight']<60):print("小花符合二狗子的要求..小花和二狗子约会了")else:print("由于小花不符合二狗子的要求,二狗子决定和小翠约会试试..")if xiaocui['age']<25 and (xiaocui['height']<170 or xiaocui['weight']<60):print("小翠符合二狗子的要求..小翠和二狗子约会了")else:print("所有的女孩子都不符合二狗子的要求,二狗子决定单身一辈子")print("执行完毕...")#==== 执行结果 ====

"""由于小丽不符合二狗子的要求,二狗子决定和小花约会试试..

小花符合二狗子的要求..小花和二狗子约会了

执行完毕..."""

if 与 else 实例分析

可以看到二狗子在约会成功后就没有继续再做约会了,完成了二狗子爸妈的需求。但是这段代码看起来实在是太糟糕了,如果有100个女孩和二狗子约会这样一直写 if和 else那么到最后岂不是一直往右边飘到天上去了吗?所以我们需要一个在保证这种逻辑判断下并且提高代码可读性的解决方案。

if 与 elif 以及 else

为了解决单纯的if和else嵌套带来的阅读性差的问题。这里出现了elif这个东西,它相当于是else和if的缩写版,我们来看一下他的使用方法:

#==== if 与 elif 的使用 ====

'''if 条件判断:

逻辑代码...

elif 条件判断: #如果条件成立,剩下同级别下的elif与else都不将再继续执行。

逻辑代码...

elif 条件判断:

逻辑代码...

else:

逻辑代码'''tag= 2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值