美文网首页Python养成记
11、for循环示例

11、for循环示例

作者: 魔方宫殿 | 来源:发表于2022-03-25 22:58 被阅读0次
    Life is short, you need Python!

    上集回顾:

    1. for循环语句
    2. range()函数
    3. range() 、len()天仙配

    上集学习了for循环语句的相关知识,这集就温故知新加学以致用。

    一、for循环计算1到100的和
    没有掌握循环语句之前,想计算1到100的和可能需要1+2+3+。。。+100,如果计算到1000、10000不知道要计算多久!学了循环语句之后这就是非常轻松的事了。先复习一下while循环语句,看看while循环版本的:

    >>> total = 0
    >>> i = 1
    >>> while i <= 100 :
    ...   total += i
    ...   i += 1
    ...
    >>> print(total)
    5050
    

    然后是for循环版本:

    >>> total = 0
    >>> for i in range(101) :
    ...   total += i
    ...
    >>> print(total)
    5050
    

    二、for循环乘法口诀表
    while循环版本求和与for循环版本求和差别好像不大,再用for循环实现一下乘法口诀表试试:

    >>> for i in range(1, 10) :
    ...   for j in range(1, i+1) :
    ...     print(str(j) + "X" + str(i) + "=" + str(j * i), end = " ")
    ...   print()
    ...
    1X1=1
    1X2=2 2X2=4
    1X3=3 2X3=6 3X3=9
    1X4=4 2X4=8 3X4=12 4X4=16
    1X5=5 2X5=10 3X5=15 4X5=20 5X5=25
    1X6=6 2X6=12 3X6=18 4X6=24 5X6=30 6X6=36
    1X7=7 2X7=14 3X7=21 4X7=28 5X7=35 6X7=42 7X7=49
    1X8=8 2X8=16 3X8=24 4X8=32 5X8=40 6X8=48 7X8=56 8X8=64
    1X9=9 2X9=18 3X9=27 4X9=36 5X9=45 6X9=54 7X9=63 8X9=72 9X9=81
    
    while

    对比下while版本的乘法口诀表,for循环语句版本的乘法口诀表貌似简单了许多,主要是不用考虑数值的自增!

    三、continue语句
    循环语句代码块中,有时候执行了一部分不需要继续执行后面的代码,而想要进入下一次循环,这时候就可以使用continue语句。continue语句表示结束当前这次迭代继续执行循环的下一次迭代:

    >>> for num in range(2, 10) :
    ...   if num % 2 == 0:
    ...     print("发现一个偶数:", num)
    ...     continue
    ...   print("发现一个奇数:", num)
    ...
    发现一个偶数: 2
    发现一个奇数: 3
    发现一个偶数: 4
    发现一个奇数: 5
    发现一个偶数: 6
    发现一个奇数: 7
    发现一个偶数: 8
    发现一个奇数: 9
    

    四、break语句和else语句
    break语句用于跳出最近的forwhile循环。循环语句也支持 else 子句;for循环中可迭代对象中的元素全部循环完毕,或 while循环的条件为假时,执行该子句;break语句终止循环时,不执行该子句。 请看下面这个查找素数的循环示例:

    >>> for n in range(2, 10):
    ...   for x in range(2, n) :
    ...     if n % x == 0:
    ...       print(n, '=', x, '*', n // x)
    ...       break
    ...   else:
    ...     print(n, '是素数')
    ...
    2 是素数
    3 是素数
    4 = 2 * 2
    5 是素数
    6 = 2 * 3
    7 是素数
    8 = 2 * 4
    9 = 3 * 3
    

    没错,这段代码就是这么写。仔细看:else 子句属于 for循环,不属于 if语句。


    本集技能总结:

    1. for循环语句求和
    2. for循环语句乘法口诀表
    3. continue语句
    4. break语句和else语句

    下集见

    相关文章

      网友评论

        本文标题:11、for循环示例

        本文链接:https://www.haomeiwen.com/subject/qmiddrtx.html