三元运算符:
条件为真时得值 if (条件表达式)else 条件为假时得值
break语句:
break语句用于while和for循环,用来结束整个循环,当有循环嵌套时只能跳出最近一层的循环
while True:
a = input('输入Q或者q结束程序')
if a.upper() == 'Q':
print('退出程序')
break
else:
print(a)
continue语句:
continue语句用于结束本次循环开始下一次循环,多个循环嵌套时continue用于最近的一层循环
empNum=0
salarySum=0
salarys[]
while True:
s = input('请输入员工薪资(按Q或q结束)')
if s.upper()=='Q':
print('录入完成,结束')
break
if float(s)<0:
continue
empNum+=1
salarys.append(float(s))
salarySum +=float(s)
print('员工数:{0}'.format(empNum))
print('录入薪资:',salarys)
else语句:
while、for循环可以附带一个else语句(可选),如果while语句没有被break语句结束,则会正常执行else子句,否则不执行,即被break语句结束就不执行else子语句
while 条件:
循环体
else:
语句块
for 变量 in 可迭代对象:
循环体
else:
语句块
'''员工一共4名,录入他们的薪资,全部录入后打印提示。
最后打印输出录入薪资和平均薪资'''
salary = []
salarySum = 0
for i in range(1,5):
s = input('请输入第{0}员工的薪资(按Q或者q中途结束):'.format(i) )
if s.upper()=='Q':
print('录入完成,退出')
break
if float(s) <0:
continue
salary.append(float(s))
salarySum = salarySum + float(s)
else:
print('您已录入4名员工薪资')
print('录入的薪资为:',salary)
print('员工的平均薪资为:',salarySum/4)
优化循环,遵守下面三个原则可以大大提高运行效率,避免不必要的低效计算:
- 尽量减少循环内部不必要的计算
- 嵌套循环中,尽量减少内层循环的计算,尽可能向外提。
- 局部变量查询较快,尽量使用局部变量
- 连接多个字符串,使用 join()而不使用+
- 列表进行元素插入和删除,尽量在列表尾部操作