小朋友们好,大朋友们好!
我是猫妹,一名爱上Python编程的小学生。
今日主题
最近猫妹一直在练习Python编程,有些情况判断中有判断,循环中有循环,偶尔会出错。
猫爸说,这些内容叫嵌套,听起来吓人,其实很简单,只要你足够认真,它就是纸老虎。
if嵌套
我们知道,if语句有三种基本形式:
if 表达式:
代码块
if 表达式:
代码块 1
else:
代码块 2
if 表达式 1:
代码块 1
elif 表达式 2:
代码块 2
elif 表达式 3:
代码块 3
...//其它elif语句
else:
代码块 n
这 3 种条件语句之间可以相互嵌套。
所谓if嵌套,只是其表达式是一个if判断语句而已。
只要注意好缩进,理清关系即可。
我们做个习题,开车不喝酒,喝酒不开车,我们可以通过测量血液中酒精含量,看司机朋友有没有喝酒。
循环嵌套
循环嵌套,比if嵌套复杂一些。
毕竟,if属于分支,只要把分支整理清楚了就可以了。
循环嘛!
要执行一定次数,如果嵌套时,同时考虑外层和内层,很容易出错。
我们应该先考虑外层,再考虑内层。
考虑外层时,先不考虑内层。
考虑内层时,先不考虑外层。
比如我们常用的九九乘法表
我们先考虑外层,那就是一共九行,第一行到第九行乘数分别是1~9。
外层代码很简单:
我们再考虑内层,内层的等式数量不同,数量等于行数。
且每个等式都是从1*行数~行数*行数。
我们按照这个逻辑写代码:
100之内有哪些勾股数
还记得昨天的问题吗?
抛出个问题,100之内的数字,都有哪些数字可以构成直角三角形?
有了今天的复习,遇到嵌套不要慌,按逻辑分割功能,认真对待,各个击破就是了。
于是有了下面的代码:
很显然代码有些问题,数据有些重复。
比如(3,4,5)(3,5,4)(4,3,5)(4,5,3)(5,3,4)(5,4,3)其实是一组数组。
我们把只统计一次即可,我们在多次循环时,可以加判断。
比如i最大,j次之,k最小,顺便再统计有多少组数字符合该条件。
好了,我们今天就学到这里吧!
遇到嵌套不要怕,认真对待不要慌,它就是纸老虎!
我是猫妹,咱们下次见!
领取专属 10元无门槛券
私享最新 技术干货