Python入门基础篇 No.47 —— else 语句_循环代码优化

Python入门基础篇 No.47 —— else 语句_循环代码优化


前生篇:break语句_continue语句

后世篇:zip()并行迭代

小白不看都能懂:Python之真功夫系列(全章)


前言

在这里插入图片描述


一、else 语句

  • while、for 循环可以附带一个 else 语句(可选)。如果 for、while 语句没有被 break 语句结束,则会执行 else 子句,否则不执行。语法格式如下:
    在这里插入图片描述
  • 员工一共 4 人。录入这 4 位员工的薪资。全部录入后,打印提示“您已经全部录入 4 名员工的薪资”。最后,打印输出录入的薪资和平均薪资
    代码演示:
salarySum = 0
salarys = []
for i in range(4):
    x = input("请输入一个字符(输入Q或q结束)")

    if x.upper() == 'Q':
        print("录入完成")
        break
    if float(x)<0:
        continue
    salarys.append(float(x))
    salarySum += float(x)

print("录入薪资:", salarys)
print("平均薪资{0}".format(salarySum/4))

在这里插入图片描述
在这里插入图片描述

二、循环代码优化

  • 虽然计算机越来越快,空间也越来越大,我们仍然要在性能问题上“斤斤计较”。编写循环时,遵守下面三个原则可以大大提高运行效率,避免不必要的低效计算:
  1. 尽量减少循环内部不必要的计算
  2. 嵌套循环中,尽量减少内层循环的计算,尽可能向外提。
  3. 局部变量查询较快,尽量使用局部变量

代码演示:

#循环代码优化测试
import time

start1 = time.time()
for i in range(1000):
    result = []
    for m in range(10000):
        result.append(i*1000+m*100)

end1 = time.time()
print("耗时:{0}".format((end1-start1)))

start2 = time.time()
for i in range(1000):
    result = []
    c = i*1000
    for m in range(10000):
        result.append(c+m*100)

end2 = time.time()
print("耗时:{0}".format((end2-start2)))
--------------------------------
耗时:2.324948310852051
耗时:1.8795645236968994

在这里插入图片描述

三、其他优化手段

  • 连接多个字符串,使用 join()而不使用+
  • 列表进行元素插入和删除,尽量在列表尾部操作

总结

以上帮各位总结好了,收藏,关注即可查收。

前生篇:break语句_continue语句

后世篇:zip()并行迭代

小白不看都能懂:Python之真功夫系列(全章)


关注下方公众号,免费拿Python学习资料!!!

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值