美文网首页
Python学习18 : 条件循环(while循环)

Python学习18 : 条件循环(while循环)

作者: 简洁的书写 | 来源:发表于2024-08-28 20:53 被阅读0次

    for循环就像是排队办事,一个个进入,轮流办理,每个人经历的流程都一样。

    在for循环,一次遍历就是一次循环,因此我们知道会经历过几次循环。

    在另一种情况下,我们并不关心循环几次,只在意循环什么时候结束。

    这样的循环逻辑,就对应Python中的条件循环(也叫while循环)。

    条件循环,又称while循环,以判断条件是否成立,来决定是否执行循环内的代码。当判断为真时,代码会循环执行,当判断为假时则终止循环。

    长跑2000米时,判断跑够5圈才能停止跑:在没跑够5圈时,就要一直跑,直到跑够了5圈,就结束。

    边界条件(Boundary Conditions)while循环的边界条件,是指终止循环的那个判断条件。边界条件为False,则中止循环。

    好象跑圈的时候,条件为小于10圈就一直跑。直到跑到10圈,教练吹哨,就停止跑圈。

    nameList = ["Max","Tom","Jim","Ken","Kim"]

    counter = 0

    while counter < 3:

        print(nameList[counter])

        counter = counter + 1

    代码使用了while循环把列表的元素全部输出出来。

    第3行使用while循环,判断Counter是否小于3。若是,就进入循环;若不是,程序就终止。

    第4行,条件为True时,输出列表nameList中索引为Counter的元素;

    第5行,在条件为True时,用Counter计数,继续回到第3行代码,不断循环,直到while循环判断为False,程序结束。

    number =100

    while number >=0:

    print(number)

    number = number -1

    输出为100,99,98,97。。。。。。3,2,1,0。这些小于100的整数。

    sum=0

    counter=0

    while counter <5:

    sum = sum + counter

    counter = counter +1

        print(sum)

    逐行解释代码:

    1. `sum = 0`:初始化一个变量`sum`,用来存储累加的结果,初始值为0。

    2. `counter = 0`:初始化一个变量`counter`,用来作为循环计数器,初始值也为0。

    3. `while counter < 5:`:这是一个`while`循环的条件,只要`counter`的值小于5,循环就会继续执行。

    4. `sum = sum + counter`:在循环体内部,将`counter`的当前值加到`sum`上,更新`sum`的值。

    5. `counter = counter + 1`:将`counter`的值增加1,为下一次循环做准备。

    6. `print(sum)`:打印当前`sum`的值。

    循环会执行5次,因为`counter`从0开始,每次循环加1,直到`counter`等于5时,条件`counter < 5`不再成立,循环结束。

    下面是循环执行的详细过程和打印结果:

    - 初始时:`sum = 0`, `counter = 0`

    - 第1次循环:`counter`为0,`sum`更新为`0 + 0 = 0`,打印`0`

    - 第2次循环:`counter`为1,`sum`更新为`0 + 1 = 1`,打印`1`

    - 第3次循环:`counter`为2,`sum`更新为`1 + 2 = 3`,打印`3`

    - 第4次循环:`counter`为3,`sum`更新为`3 + 3 = 6`,打印`6`

    - 第5次循环:`counter`为4,`sum`更新为`6 + 4 = 10`,打印`10`

    循环结束后,`sum`的最终值是10,但这个值不会被打印,因为打印语句在循环体内,循环结束后就不再执行。

    所以,程序的输出结果是:

    0
    1
    3
    6
    10

    sum= 0

    counter= 0

    while counter < 5:

        sum = sum + counter

        counter = counter + 1

    print(sum)

    输出的只是一个数字10。解释如下:这道题和上一道题唯一不同之处在于print()语句所在的位置不一样。上一题,在循环中输出,所以循环进行五次,就输出了五个值。而本题中,print()在while循环之外,并且和while循环处于同一层级,循环结束以后才会执行print,输出最终的值。

    死循环(Infinite Loop)
           在编程中,一个靠自身控制无法终止的程序称为“死循环”。死循环是一种循环类型, 当一个循环永远无法终止 的时候,我们就说它是一个死循环。比喻:死循环就像是在一个没有出口的迷宫一直转圈,永远都跑不出这个迷宫。一般来说“死循环”是一个bug,它会导致程序一直无意义运行,我们在写代码的时候一定要尽量去避免。

    for循环和while循环的区别在哪呢?

    第一个区别:for循环是在每一次循环的时候,按照从头到尾的顺序自动遍历,给变量name赋值列表中的元素;而while循环是用一个计数器来索引列表,分别访问这个列表里面的每个元素。

    第二个区别:循环的终止条件不一样。for循环的终止条件是遍历完这个列表;while循环的终止条件是边界条件,counter<5,当边界条件为True的时候继续执行代码,为False的时候就终止执行。

    简而言之,需要记住三条。

    1. for循环常用于处理列表内的每个元素。

    2. for循环有天然的边界条件,while循环没有,需要我们精心设计边界条件。

    3. 大多数时候,for循环和while循环可以互换使用。

    相关文章

      网友评论

          本文标题:Python学习18 : 条件循环(while循环)

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