Python学习——【2.4】循环中断:break和continue

【2.4】循环中断:break和continue

  无论是while循环还是for循环,都是重复性的执行特定操作。

  在这个重复的过程中,会出现一些其它情况让我们不得不:

  1.暂时跳过某次循环,直接进行下一次;

  2.提前退出循环,不再继续。

  对于这种场景,Python提供continue和break关键字,用以对循环进行临时跳过直接结束

一、continue

  continue关键字的效果:中断本次循环,直接进入下一次循环。

  continue可以用于for循环和while循环,效果是一样的。

for i in range(1, 100):
	语句1
    continue
    语句2

  上面代码,在循环体内,遇到continue就提前结束本轮循环,进行下一轮循环。所以,语句2是不会执行的。

二、break

  break关键字的效果:整个循环全部结束

  break可以用于for循环和while循环,效果一致。

for i in range(1, 100):
    语句1
    break
    语句2
语句3

  上面代码,在循环体内,遇到break就结束循环了。所以,在执行了一次语句1后,遇到break,整个for循环直接全部结束(后面轮次的循环也不再管),直接执行语句3了。

三、在嵌套循环中的使用

  无论是continue还是break,它只可以控制它所在层次的循环体是跳过本轮循环,或是结束整个循环,而对上层循环没有任何影响。

  例如:

for i in range(1, 6):
    print("语句1")
    for j in range(1, 6):
        print("语句2")
        continue
        print("语句3")
        
    print("语句4")

  再例如:

for i in range(1, 100):
    语句1
    for j in range(1, 100):
        语句2
        break
        语句3
        
    语句4

※、练习

案例:发工资

  某公司,账户余额有1万元,给20名员工发工资。

  1.员工编号从1到20,从编号1开始,依次领取工资,每人可领取1000元;

  2.领工资时,财务判断员工的绩效分(1-10)(随机生成),如果低于5,不发工资,换下一位;

  3.如果工资发完了,结束发工资。

...
员工12,绩效分3,低于5,不发工资,下一位。
员工13,绩效分1,低于5,不发工资,下一位。
员工14,绩效分4,低于5,不发工资,下一位。
向员工15发放工资1000元,账户余额还剩余2000元。
向员工16发放工资1000元,账户余额还剩余1000元。
员工17,绩效分2,低于5,不发工资,下一位。
向员工18发放工资1000元,账户余额还剩余0元。
工资发完了,下个月再领取吧。

我的代码

import random

# 账户余额
money = 10000

# 控制员工编号1-20
for id in range(1, 21):
    # 随机生成当前员工绩效分
    score = random.randint(1, 10)
    if score < 5:
        print(f"员工{id},绩效分{score},不发工资,下一位。")
        continue
    # 发放工资1000元
    if money >= 1000:
        money -= 1000
        print(f"向员工{id}发放工资1000元,账户余额还剩余{money}元。")
    if money == 0:
        print("工资发完了,下个月再领取吧。")
        break
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋秋秋叶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值