【Python入门】Python语言的控制流程二

4. Python语言的控制流程二

4.4 Python之for循环

for循环在Python语言的流程控制中是非常重要的,在编程中有很多场景需要使用到for循环

s = 'ABCD'
for ch in s:
    print(ch) # 注意缩进

在上述代码中,ch是在for循环中定义的,意思是把字符串s中的每一个元素依次赋值给ch,然后再把ch打印出来,直到打印出字符串s的最后一个字符为止

示例

班里考试后,老师要统计几位同学的平均成绩,已知5位同学的成绩用list表示如下:
L = [75, 92, 59, 68, 99]
请利用for循环计算出平均成绩

# Enter a code
L = [75, 92, 59, 68, 99]
sum = 0.0
for score in L:
    sum+=score
print(sum/len(L))

在这里插入图片描述

4.5 Python之while循环

和 for 循环不同的另一种循环是 while 循环,while循环可以继续进行下去的条件更加简单,只需要判断while循环的条件是否为True即可,当条件为True时,即继续运行下去。

比如:
在运行一定次数后,条件可以自动变为False从而跳出while循环, 比如计算1~100的和。

num = 1
sum = 0
while num <= 100:
    sum = sum + num # 注意缩进
    num = num + 1 # 注意缩进
print(sum) # ==> 5050

在上述代码中,while的判断条件是num <= 100,当num小于或者等于100时,循环会继续下去,但当num > 100时,将跳出循环;因为在while循环里面num不断加1,所以num最终会大于100,因此while循环不会无限进行下去

示例

请求出1~10的乘积

# Enter a code
sum = 1
x = 1
while x<=10:
    sum*=x
    x=x+1
print(sum)

在这里插入图片描述

扫描二维码关注公众号,回复: 14354401 查看本文章

4.6 Python之break跳出循环

用 for 循环或者 while 循环时,如果要在循环体内直接退出循环,可以使用 break 语句。
比如在前面的无限循环里面,只要在恰当的时机,我们使用break跳出循环,也可以求出1~100的和。

num = 1
sum = 0
while True:
    if num > 100:
        break
    sum = sum + num
    num = num + 1
print(sum)

同样的,对于字符串s = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’,假如希望输出s的前20个字符,而不是所有字符,我们也可以使用break。

s = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
num = 1
for ch in s:
    if num > 20:
        break
    print(ch)
    num = num + 1

示例

请综合使用while True和break,计算0~1000以内,所有偶数的和

# Enter a code
sum = 0
point = 0
while True:
    if point>1000:
        break
    if point%2==0:
        sum+=point
    point=point+1
print(sum)

在这里插入图片描述

4.7 Python之continue继续循环

使用continue,我们可以控制循环继续下去,并跳过continue后面的逻辑,比如,对于字符串s = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’,假如希望输出字符串s中第10个以后的字符,而不是所有字符,这个时候, 我们可以使用continue跳过前面的9个字符。

s = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
num = 1
for ch in s:
    if num < 10:
        num = num + 1
        continue # 当num < 10时,跳过后续循环代码,继续下一次循环
    print(ch)
    num = num + 1

示例

请综合使用while和continue,计算0~1000以内,所有偶数的和

# Enter a code
sum = 0
point = 0

while True:
    if point>1000:
        break
    if point%2!=0:
        point=point+1
        continue
    sum+=point
    point=point+1
    
print(sum)

在这里插入图片描述

4.8 Python之嵌套循环

就像多层if-else嵌套一样,python的循环也支持嵌套。
我们使用两层嵌套循环输出字符串’ABC’中每个字符和字符串’123’每个字符的排列。

s1 = 'ABC'
s2 = '123'
for x in s1:
    for y in s2:
        print(x + y)

在上述代码中,对于外层循环,外层每循环1次,内层就会循环3次,因此,我们将会得到如下结果:

A1
A2
A3
B1
B2
B3
C1
C2
C3

示例

字符串s1=‘ABC’,字符串s2=‘123’,字符串s3=‘xyz’,请输出s1、s2、s3中所有字符的排列

# Enter a code
s1 = 'ABC'
s2 = '123'
s3 = 'xyz'
for x in s1:
    for y in s2:
        for z in s3:
            print(x + y+z)

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42473228/article/details/125583494