1. 编程学习网 > 编程教程 > Python教程 > python选择结构和循环结构的嵌套

python选择结构和循环结构的嵌套

选择结构和循环结构的嵌套

选择结构和循环结构都可以嵌套使用,也可以交叉嵌套使用。

1.选择结构的嵌套

if语句嵌套一般格式:

其中在嵌套内部的if-else结构中还可以继续无休止嵌套,这时就需要严格使用缩进来控制每个if结构。
例:使用if嵌套判断输入的两个数的大小(要求输入0-100之间的数)。

请回忆我们之前讲过的if-elif-else多分支结构,和if嵌套有异曲同工之处,请大家使用多分支结构重写上例。

2.循环结构嵌套

while循环嵌套的一般格式:


这里给出的只是一般形式,事实上嵌套的使用非常灵活,两种循环结构也可以混合嵌套,即在while中嵌套for,for中嵌套while,当然也可以嵌套选择结构。
例:请输入一个大于2的正整数,判断该数是否为素数,要求多组测试数据,输入0时结束程序。
分析:素数,即除了1和它本身没有别的约数。那么只需要判断从2到该数减1的数中有没有该数的因子,如果有则该数不是素数,没有证明该数是素数。

在题目要求多组输入的时候,我们可以在程序最外部嵌套一个死循环,然后根据题目中给出的结束条件,写一个if加break语句,表示如果输入的a是0,那么跳出该循环,注意break只能跳出其上一层的循环,而不是全部的循环,只不是这里只有一层循环,所以会直接结束程序,但是对于第二个break,它的作用是当检测到一个输入数据的因子时就结束该层循环,这里只是for循环一层,这样就不用继续计算后面的因子,比如12有2,3,4......等等的因子,如果不加break就会每一个都计算到,但是有了这个break,在计算到2的时候,就会判断12不是素数,因此可以节省计算时间。
实际上在找因子时不必计算到a-1,只需要到即可,因为,我们是从2开始判断,假如a有大于的因子,那么它的另一个因子一定是小于的,那么程序计算过程中查到这个因子时就可判断它不是素数,因此只需到平方根,而不必查到 a-1,在程序中可以表示为a的0.5次方,然后取整数部分,为了保证不小于开根号后的具体值,往往在取整后再加上1,这样可以进一步提供效率。请各位在完成习题时使用这个方法做。
 
Cookie
本章我们已经学习完了python的三大基本结构,即顺序、选择、循环结构,也接触到了代码块的概念,这里介绍一个可以代替代码块语句pass,利用pass语句可以起到一个占位不报错的效果,有时候在还确定要在if或while下写什么东西时,可以写一个pass语句,然后继续写后面代码,系统不会报错,如:

其他地方,只要是用到代码都可以使用pass语句,暂时跳过。
 
请用python语言完成本节练习:
1. 题库1008
2. 题库1009
3. 题库1143
4. 题库1084
 

本文由IT教学网整理发布,转载请注明出处:http://www.itjx.com/jiaocheng/Python/2020/0113/512.html

联系我们

在线咨询:点击这里给我发消息

咨询电话:400-998-2681

工作时间:7*24小时无休