循环介绍
1、软件开发中循环的使用场景
跟媳妇承认错误,说一万遍"媳妇儿,我错了"
print("媳妇儿,我错了")
print("媳妇儿,我错了")
print("媳妇儿,我错了")
...(还有99997遍)...
使用循环语句一句话搞定
i = 0
while i<10000:
print("媳妇儿,我错了")
i+=1
2、小总结
一般情况下,需要多次重复执行的代码,都可以用循环的方式来完成
循环不是必须要使用的,但是为了提高代码的重复使用率,所以有经验的开发者都会采用循环
while循环
1、while循环的格式
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
demo
i = 0
while i<5:
print("当前是第%d次执行循环"%(i+1))
print("i=%d"%i)
i+=1
结果:
当前是第1次执行循环
i=0
当前是第2次执行循环
i=1
当前是第3次执行循环
i=2
当前是第4次执行循环
i=3
当前是第5次执行循环
i=4
while循环应用
1. 计算1~100的累积和(包含1和100)
参考代码如下:
#encoding=utf-8
i = 1
sum = 0while i<=100:
sum = sum + i
i += 1
print("1~100的累积和为:%d"%sum)
2. 计算1~100之间偶数的累积和(包含1和100)
参考代码如下:
#encoding=utf-8
i = 1
sum = 0while i<=100:
if i%2 == 0:
sum = sum + i
i+=1
print("1~100的累积和为:%d"%sum)
while循环嵌套
前面学习过if的嵌套了,想一想if嵌套是什么样子的
类似if的嵌套,while嵌套就是:while里面还有while
1、while嵌套的格式
while 条件1:
条件1满足时,做的事情1
条件1满足时,做的事情2
条件1满足时,做的事情3
...(省略)...
while 条件2:
条件2满足时,做的事情1
条件2满足时,做的事情2
条件2满足时,做的事情3
...(省略)...
2、while嵌套应用一
要求:打印如下图形:
*
* *
* * *
* * * *
* * * * *
参考代码:
i = 1
while i<=5:
j = 1
while j<=i:
print("* ",end='')
j+=1
print("\n")
i+=1
3、while嵌套应用二:九九乘法表
参考代码:
i = 1
while i<=9:
j=1
while j<=i:
print("%d*%d=%-2d "%(j,i,i*j),end='')
j+=1
print('\n')
i+=1
for循环
像while循环一样,for可以完成循环的功能。
在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。
for循环的格式
for 临时变量 in 列表或者字符串等:
循环满足条件时执行的代码
else:
循环不满足条件时执行的代码
demo1
name = 'haoxiang'
for x in name:
print(x)
demo2
name = ''
for x in name:
print(x)
else:
print("没有数据")
break和continue
1. break
<1> for循环
普通的循环示例如下:
name = 'haoxiang'
for x in name:
print('----')
print(x)
运行结果:
带有break的循环示例如下:
name = 'haoxiang'
for x in name:
print('----')
if x == 'x':
break
print(x)
<2> while循环
普通的循环示例如下:
i = 0
while i<10:
i = i+1
print('----')
print(i)
带有break的循环示例如下:
i = 0
while i<10:
i = i+1
print('----')
if i==5:
break
print(i)
小总结:
break的作用:用来结束整个循环
2. continue
<1> for循环
带有continue的循环示例如下:
name = 'haoxiang'
for x in name:
print('----')
if x == 'g':
continue
print(x)
<2> while循环
带有continue的循环示例如下:
i = 0
while i<10:
i = i+1
print('----')
if i==5:
continue
print(i)
小总结:
continue的作用:用来结束本次循环,紧接着执行下一次的循环
3. 注意点
break/continue只能用在循环中,除此以外不能单独使用
break/continue在嵌套循环中,只对最近的一层循环起作用
总结
if往往用来对条件是否满足进行判断
if有4中基本的使用方法:
1、基本方法
if 条件:
满足时做的事情
2、满足与否执行不同的事情
if 条件:
满足时做的事情
else:
不满足时做的事情
3、多个条件的判断
if 条件:
满足时做的事情
elif 条件2:
满足条件2时做的事情
elif 条件3:
满足条件3时做的事情
else:
条件都不满足时做的事情
4、嵌套
if 条件:
满足时做的事情
这里还可以放入其他任何形式的if判断语句
while循环一般通过数值是否满足来确定循环的条件
i = 0
while i<10:
print("hello")
i+=1
for循环一般是对能保存多个数据的变量,进行便利
name = 'haoxiang'
for x in name:
print(x)
if、while、for等其他语句可以随意组合,这样往往就完成了复杂的功能
作业
必做题:
1. 使用if,编写程序,实现以下功能:
从键盘获取用户名、密码
如果用户名和密码都正确(预先设定一个用户名和密码),那么就显示“欢迎进入xxx的世界”,否则提示密码或者用户名错误
2. 使用while,完成以下图形的输出
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
选做题:
1. 根据以下信息提示,请帮小明计算,他每月乘坐地铁支出的总费用
提示信息:
北京公交地铁新票价确定
据北京市发改委网站消息称,北京市将从2015年12月28起实施公共交通新票价:地铁6公里(含)内3元,公交车10公里(含)内2元,使用市政交通一卡通刷卡乘公交车普通卡5折,学生卡2.5折。
具体实施方案如下:
一、城市公共电汽车价格调整为:10公里(含)内2元,10公里以上部分,每增加1元可乘坐5公里。使用市政交通一卡通刷卡乘坐城市公共电汽车,市域内路段给予普通卡5折,学生卡2.5折优惠;市域外路段维持现行折扣优惠不变。享受公交政策的郊区客运价格,由各区、县政府按照城市公共电汽车价格制定。
二、轨道交通价格调整为:6公里(含)内3元;6公里至12公里(含)4元;12公里至22公里(含)5元;22公里至32公里(含)6元;32公里以上部分,每增加1元可乘坐20公里。使用市政交通一卡通刷卡乘坐轨道交通,每自然月内每张卡支出累计满100元以后的乘次,价格给予8折优惠;满150元以后的乘次,价格给予5折优惠;支出累计达到400元以后的乘次,不再享受打折优惠。
要求:
假设每个月,小明都需要上20天班,每次上班需要来回1次,即每天需要乘坐2次同样路线的地铁;每月月初小明第一次刷公交卡时,扣款5元;编写程序,帮小明完成每月乘坐地铁需要的总费用