Python学习笔记之While循环(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012561176/article/details/81911405

1、while循环简介:for循环用于针对集合中的每个元素都一个代码块,而while循环不断地运行,直到指定的条件不满足为止。 

2、一个简单的while循环例子,很简单,小于10时循环,到number变为8的时候,8再乘于2,不小于10了,所以不执行while循环,跳出此循环,代码如下:

#一个简单的while循环例子

number = 1;
while number < 10:
    print(number);
    number *= 2;

运行后如下图所示:

3、让用户选择是否进行或者退出,即使用用户输入的input():

#一个while循环,用户输入是否进行

number = 1;
msg = input("please input yes or no,do the program:");
    if msg == 'yes':
        while number < 10:
            print(number);
            number *= 2;
    else:
        print("The program is end");

运行后将会报一个错误,如下图所示:

这个错误又是因为缩进的问题,不需要缩进的代码缩进了将会出现一些错误情况,修改下代码:

#一个while循环,用户输入是否进行

number = 1;
msg = input("please input yes or no,do the program:");
if msg == 'yes':
    while number < 10:
        print(number);
        number *= 2;
else:
    print("The program is end");

运行后如下所示:

4、使用标志,往往在程序中,通常会通过布尔表达式来判断是否进行一些操作,满足了一些什么条件不允许进行操作,这个在while循环这里经常用到。示例代码如下:

#一个while循环,使用布尔表达式

count = 1;
action = True;
while action:
    print("你第" + str(count) + "次玩这游戏");
    count += 1;
    if count > 10:
        action = False;

当count大于10之后,将不再执行,跳出while循环,运行后如下图所示:

5、使用break关键字退出循环,要立即退出while循环,不再运行循环中余下的代码,也不管条件测试的结果如何,可使用 break语句。break语句用于控制程序流程,可使用它来控制哪些代码行将执行,哪些代码行不执行,从而让程序按你的要求执行你要执行的代码。 简单示例如下:

#一个while循环,使用break关键字

while True:
    fruit = input("please input you love fruit:");
    if fruit == 'apple':
        break;
    else:
        print("you love:" + fruit);

建议代码中不要用while True这种写法,避免死循环操作,这里是测试代码,可以忽略,运行后如下图所示:

6、在循环中使用 continue,要返回到循环开头,并根据条件测试结果决定是否继续执行循环,可使用continue语句,它不像break语句那样不再执行余下的代码并退出整个循环。示例代码如下:

#一个while循环,使用continue关键字

count = 1;
while count < 10:
    count += 1;
    if count % 2 == 0:
        continue;
    print(count);

运行后如下图所示:

7、避免无限循环,每个while循环都必须有停止运行的途径,这样才不会没完没了地执行下去。每个程序员都会偶尔因不小心而编写出无限循环,在循环的退出条件比较微妙时尤其如此。 如果程序陷入无限循环,可按Ctrl + C,也可关闭显示程序输出的终端窗口。 示例代码如下:

#一个while循环,死循环

count = 1;
while count < 10:
    print(count);

如果没加条件测试,按ctrl+c之后就如下所示:

以上内容仅供大家学习参考,谢谢!

猜你喜欢

转载自blog.csdn.net/u012561176/article/details/81911405