python基础之---循环简介(九)

1、循环的作用

让代码更高效的重复执行。

2、循环的分类

在Python中,循环分为whilefor两种,最终实现效果相同。

3、while语法

while 条件:
    条件成立重复执行的代码1
    条件成立重复执行的代码2
    ......

4、while循环快速体验

需求:复现重复执行10次print('Hello World')

分析:初始值是0次,终点是10次,重复做的事情输出“Hello World”。

# 循环的计数器
i = 0
while i < 10:
    print('Hello World')
    i += 1

print('任务结束')

5、while的应用

5.1应用一:计算1-100累加和

分析:1-100的累加和,即1 + 2 + 3 + 4 +….,即前两个数字的相加结果 + 下一个数字( 前一个数字 + 1)。

i = 1
result = 0
while i <= 100:
    result += i
    i += 1

# 输出5050
print(result)
注意:为了验证程序的准确性,可以先改小数值,验证结果正确后,再改成1-100做累加。

5.2应用二:计算1-100偶数累加和

分析:1-100的偶数和,即 2 + 4 + 6 + 8…,得到偶数的方法如下:

  • 偶数即是和2取余结果为0的数字,可以加入条件语句判断是否为偶数,为偶数则累加

  • 初始值为0 / 2 , 计数器每次累加2

方法一:条件判断和2取余数则累加

# 方法一:条件判断和2取余数为0则累加计算
i = 1
result = 0
while i <= 100:
    if i % 2 == 0:
        result += i
    i += 1

# 输出2550
print(result)

方法二:计数器控制

# 方法二:计数器控制增量为2
i = 0
result = 0
while i <= 100:
    result += i
    i += 2

# 输出2550
print(result)

6、break和continue

break和continue是循环中满足一定条件退出循环的两种不同方式。

6.1理解

举例:一共吃5个苹果,吃完第一个,吃第二个…,这里"吃苹果"的动作是不是重复执行?

情况一:如果吃的过程中,吃完第三个吃饱了,则不需要再吃第4个和第五个苹果,即是吃苹果的动作停止,这里就是break控制循环流程,即终止此循环

情况二:如果吃的过程中,吃到第三个吃出一个大虫子…,是不是这个苹果就不吃了,开始吃第四个苹果,这里就是continue控制循环流程,即退出当前一次循环继而执行下一次循环代码

6.2break实例

i = 1
while i <= 5:
    if i == 4:
        print(f'吃饱了不吃了')
        break
    print(f'吃了第{i}个苹果')
    i += 1

6.3 continue实例

i = 1
while i <= 5:
    if i == 3:
        print(f'大虫子,第{i}个不吃了')
        # 在continue之前一定要修改计数器,否则会陷入死循环
        i += 1
        continue
    print(f'吃了第{i}个苹果')
    i += 1

 7、while循环嵌套

7.1 语法

while 条件1:
    条件1成立执行的代码
    ......
    while 条件2:
        条件2成立执行的代码
        ......
总结:所谓while循环嵌套,就是一个while里面嵌套一个while的写法,每个while和之前的基础语法是相同的。

7.2执行过程

 7.3while循环嵌套应用

应用一:打印星号(正方形)

# 重复打印5行星星
j = 0
while j <= 4:
    # 一行星星的打印
    i = 0
    while i <= 4:
        # 一行内的星星不能换行,取消print默认结束符

        print('*', end='')
        i += 1
    # 每行结束要换行,这里借助一个空的print,利用print默认结束符换行
    print()
    j += 1

 应用二:打印星号(三角形)

# 重复打印5行星星
# j表示行号
j = 0
while j <= 4:
    # 一行星星的打印
    i = 0
    # i表示每行里面星星的个数,这个数字要和行号相等所以i要和j联动
    while i <= j:
        print('*', end='')
        i += 1
    print()
    j += 1

 应用三:九九乘法表

# 重复打印9行表达式
j = 1
while j <= 9:
    # 打印一行里面的表达式 a * b = a*b
    i = 1
    while i <= j:
        print(f'{i}*{j}={j*i}', end='	')
        i += 1
    print()
    j += 1

 8、for循环

8.1 语法

for 临时变量 in 序列:
    重复执行的代码1
    重复执行的代码2
    ......

8.2 快速体验

str1 = 'Hello World'
for i in str1:
    print(i)

8.3 break

str1 = 'Hello World'
for i in str1:
    if i == 'e':
        print('遇到e不打印')
        break
    print(i)

8.4 continue

str1 = 'Hello World'
for i in str1:
    if i == 'e':
        print('遇到e不打印')
        continue
    print(i)

原文地址:https://www.cnblogs.com/renshengruxi/p/15465018.html