python中的while循环

1.循环

⼴义循环:⼀个周期现象或者重复出现的情况,这种状态被称为循环。
狭义循环:在满⾜条件的情况下,反复执⾏某⼀段代码,在编程语⾔中出现的这种现象被称为循环。被反复执⾏的这段代码被称为循环体。
python中的循环有while循环和for-in循环。

2.while循环

2.1.语法及执行流程

while循环的语法为,

while 循环条件:
    循环体(重复执行的语句)

while循环的执行流程为,首先判断循环条件,如果为真,执行循环体,然后再判断循环条件,
如果为真,继续执行循环体…直到循环条件为假,退出循环,执行后续语句。
注意:循环的难度不在于语法,在于如何发现循环。
例如,计算100以内所有偶数的和。

num = 0
i = 0
while i <= 100:
    num += i
    i += 2
print(num)

运行结果如下,

2550

2.2.死循环

在某些情况下,我们没法得知while循环运行的次数,上面我们讲的while循环就没有办法进行执行。例如,输入学生成绩,当输入的成绩为负数时结束。我们无法直到while循环会循环几次,这是我们需要用while循环的死循环和break搭配。

sumsco = 0
while True: # 循环条件为真时,无限循环
    score = float(input("请输入成绩:"))
    if score < 0:
        break # 中断当前的这一重循环
    sumsco += score
print(sumsco)

2.3.while-else循环

while-else循环的语法结构为,

while 循环条件:
    循环体
else:
    语句块

执行流程为如果循环条件不具备,循环正常结束的话,会执行else语句块;如果循环是由break退出的,则不执行else语句。
例如,从键盘上输入一个数,判断是否是素数(除了1和本身没有其他除数)。

num = int(input("请输入一个整数:"))
i = 2
while i < num:
    if num % i == 0: # 除尽了,不是素数
        print("不是素数")
        break # 退出循环
    i += 1
else:
    print("是素数")

2.4.循环嵌套

循环嵌套可以帮助我们完成很多工作。
例如,打印九九乘法表。

j += 1
while j <= 9:
    # 打印一行
    i = 1
    while i <= j:
        print("%dx%d=%2d" %(j, i, j * i), end="  ")
        i += 1
    print() # 换行
    j += 1

运行结果如下,

1x1= 1  
2x1= 2  2x2= 4  
3x1= 3  3x2= 6  3x3= 9  
4x1= 4  4x2= 8  4x3=12  4x4=16  
5x1= 5  5x2=10  5x3=15  5x4=20  5x5=25  
6x1= 6  6x2=12  6x3=18  6x4=24  6x5=30  6x6=36  
7x1= 7  7x2=14  7x3=21  7x4=28  7x5=35  7x6=42  7x7=49  
8x1= 8  8x2=16  8x3=24  8x4=32  8x5=40  8x6=48  8x7=56  8x8=64  
9x1= 9  9x2=18  9x3=27  9x4=36  9x5=45  9x6=54  9x7=63  9x8=72  9x9=81  

你可能感兴趣的:(python)