练习while True,break continue,if else

emp_num = 0
salary_sum = 0
salary_list = []

while True:
    salary = input("请输入员工薪资:").strip('')
    try:
        salary = float(salary)
        if salary > 0:
            emp_num += 1
            salary_list.append(salary)
            salary_sum += salary
        else:
            print("输入薪资必须大于0,请重新录入!")

    except ValueError as e:
        if salary.upper() == "Q":
            print("退出录入系统!")
            try:
                print("平均薪资是:", salary_sum / emp_num)
                print("录入员工数量是:", emp_num)
                print("薪资明细是:", salary_list)
                print("总发薪资是:", salary_sum)
                break
            except ZeroDivisionError as e:
                print("温馨提示:已退出录入系统,但您还未录入员工薪资!")
                break
        else:
            print("输入字符无效,请重新录入!")

👆代码


photo.jpg

👆需求和整理的流程图。


吴.PNG

👆吴写的代码。
董.png

👆后半部分,在吴的基础上优化了一点点。


比较后面代码.jpg

【小结】
while True
输入-判断,不只一次,要多次所以循环

break continue
不能一直循环下去,
根据情况可能要跳出循环break
或者重新循环continue
比如按Q要退出循环
输入错误要重新输入

If else 条件分支
输入数据大于0吗
字符串大写是Q吗

try except
转型报错处理
除数为0报错处理
try里可以有条件分支if else
except里也可以有条件分支if else

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。