python基础知识(五):while循环、for循环、continue语句和break语句

1. while循环

while循环简单来说就是满足循环条件就执行循环语句,直到不满足为止,否则陷入死循环。
while语法

while 条件:
	循环语句

上述含义就是首先判断条件是否为真,如果为真即进入循环,执行一次循环,然后继续判断条件是否为真,如果为真则继续循环,不满足则循环结束。
例如:依次输出1至10

# while循环
a = 1
while a <= 10:
    print(a)
    a += 1

在这里插入图片描述
在这里插入图片描述
例如:计算1+2+3+4…+100

# 循环计算1+2+3...+100的值
sum_1 = 0
a = 1
while a <= 100:
    sum_1 = sum_1 + a
    a += 1
print(sum_1)

在这里插入图片描述

2. for循环

for循环一般可以规定循环次数,常用语法如下:

for i in range(n):
	循环语句

上述含义是循环执行n次循环语句
其中range(n)是创建一个0至n-1的整数列表,类似于MATLAB中的1*n的0至n-1的行向量,关于列表的知识在下一篇进行叙述。
循环执行5次print

for i in range(5):
    print('python')

在这里插入图片描述
依次输出0-9

for i in range(10):
    print(i)

在这里插入图片描述
在这里插入图片描述
如果对for循环的语法还是疑问,可以类比于MATLAB中的for循环。

for i in range(10):
    print(i)

类似于MATLAB中的

for i=1:n-1
	循环语句
end

计算1+2+3+…+100

sum_1 = 0
for i in range(101):
    sum_1 += i
print(sum_1)

在这里插入图片描述

3. 循环语句和if语句结合

while求1到100之间的偶数和

# while求1到100之间的偶数和
num_1 = 0
sum_2 = 0
while num_1 <= 100:
    if num_1 % 2 == 0:
        sum_2 += num_1
    num_1 += 1
print(sum_2)

在这里插入图片描述
while求1到100之间的奇数和

# while求1到100之间的奇数和
num_1 = 0
sum_2 = 0
while num_1 <= 100:
    if num_1 % 2:
        sum_2 += num_1
    num_1 += 1
print(sum_2)

在这里插入图片描述
for循环求1到100之间的偶数和

# 求1到100之间的偶数和2
sum_2 = 0
for i in range(101):
    if i % 2 == 0:
        sum_2 += i
print(sum_2)

for循环求100-1000内的水仙花数,水仙花数是个位数的立方加上十位数的立方加上百位数的立方等于本身的数。

# 100-999之间的水仙花数
for item in range(100, 1000):
    ge = item % 10  # 求个位数
    shi = item // 10 % 10  # 求十位数
    bai = item // 100  # 求百位数
    if ge**3 + shi**3 + bai**3 == item:
        print('水仙花数为:', item)

在这里插入图片描述

3. continue语句

continue语句是用来跳过本次循环的,例如

print('*' * 20 + '使用continue语句' + '*' * 20)
for item in range(1, 51):
    if item % 5 != 0:
        continue
    print(item)

在上述代码中,只有不是5的倍数,就会执行continue语句,跳过本次循环,将不会执行下一行的print语句,但是代码会继续下一次循环,直到循环结束。
在这里插入图片描述
在这里插入图片描述

print('*' * 20 + '使用continue语句' + '*' * 20)
for item in range(1, 51):
    if item % 5 == 0:
        continue
    print(item)

在·上述代码中,只要是5的倍数,就会执行continue语句,跳过本次循环,将不会执行下一行的print语句,但是代码会继续下一次循环,直到循环结束。
在这里插入图片描述

在这里插入图片描述
中间省略
在这里插入图片描述

4. break语句

break语句是用来跳出整个循环的

for item in range(1, 51):
    if item % 5 == 0:
        break
    print(item)

上述代码中,当item为5的倍数时,直接跳出循环,循环结束。
在这里插入图片描述

5. 双重循环

输出一个三行四列的矩形

"""输出一个三行四列的矩形"""
for i in range(1, 4):  # 行数3
    for j in range(1, 5):  # 列数4
        print('*', end='\t')  # 不换行输出
    print()  # 换行
print()

在这里插入图片描述
输出一个九行的直角三角形

"""输出一个九行的直角三角形"""
for i in range(1, 10):  # 行数9
    for j in range(1, i+1):  # 列数等于行数
        print('*', end='\t')  # 不换行输出
    print()  # 换行
print()

在这里插入图片描述

"""输出一个9*9乘法表"""
for i in range(1, 10):  # 行数9
    for j in range(1, i+1):  # 列数等于行数
        print(j, '*', i, '=', i*j, end='\t\t')  # 不换行输出
    print()  # 换行

在这里插入图片描述

6. 双重循环和continue语句以及break语句

continue语句以及break语句只能跳过或者跳出本层循环。

for i in range(5):  # 外层循环执行5次
    for j in range(1, 11):  # 用于内层循环10次
        if j % 2 == 0:
            break
        print(j)

上述代码中,每次当j为偶数时,就会跳过j这层循环,但是i这层循环还在继续。
在这里插入图片描述

for i in range(5):  # 外层循环执行5次
    for j in range(1, 11):  # 用于内层循环10次
        if j % 2 == 0:
            continue
        print(j, end='\t')
    print()

上述代码中,当j为偶数时,j这层循环会跳过本次循环,然后继续执行j这层循环,等待j这层循环结束,i这层循环加1,然后又继续执行j这层循环,直到循环结束。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_47598782/article/details/130976729