瀋凣
2021/05/28阅读:57主题:极简黑
python笔记11
Python day11
1.循环结构
1.1 while
循环
1.1.1 语法
while condition:
statement(s)
1.1.2 举个栗子
>>> study = "no"
>>> while study == "no":
study = input("今天你学python了吗?")
执行结果:
今天你学python了吗?no
今天你学python了吗?no
今天你学python了吗?no
今天你学python了吗?no
今天你学python了吗?yes
>>>
1.1.3 练习:
从1累加到10000
>>> count = 1
>>> sum = 0
>>> while count <= 10000:
sum = sum + count
count = count + 1
>>> print(sum)
50005000
当条件一直成立,循环体就一直被执行。
>>> while True:
print("作为一段没有灵魂的代码,我的任务就是不断的干活!")
执行结果:
作为一段没有灵魂的代码,我的任务就是不断的干活!
作为一段没有灵魂的代码,我的任务就是不断的干活!
作为一段没有灵魂的代码,我的任务就是不断的干活!
作为一段没有灵魂的代码,我的任务就是不断的干活!
作为一段没有灵魂的代码,我的任务就是不断的干活!
作为一段没有灵魂的代码,我的任务就是不断的干活!
作为一段没有灵魂的代码,我的任务就是不断的干活!
……
你的程序会一直重复执行下去,直到笔记本没电了,或者按下 Ctrl + C 强制中断程序,停止循环。
像这样的循环我们称之为死循环
。所谓死循环就是打死也不会结束的循环。
初学者其实是最怕遇到死循环的,因为,程序碰到死循环就是咱们一般意义上理解的死机了。
死循环会让python一直工作,累死累活的。所以,python如果在天有灵的话,一定不会喜欢程序里面出现死循环的。
那么是否可以理解为死循环就是坏东西,我们一定要敬而远之?
不是的,如果你是无意间写出一个条件永远为真的循环语句,那么这是个bug,我们应该尽量的去杜绝。
但如果这是一个精心设计的死循环,那么情况就另当别论了,因为死循环也是可以被设计的,也是可以被操控的。 那我们接下来就来讲讲如何操控退出死循环。
1.2 break
语句
break语句可以跳出当前循环的循环体
1.2.1 举个栗子
>>> while True:
answer = input("哥,我能退出循环了吗?")
if answer == "可以":
break
执行结果:
哥,我能退出循环了吗?不行
哥,我能退出循环了吗?继续
哥,我能退出循环了吗?坚持
哥,我能退出循环了吗?可以
>>>
注意:在循环体内,一旦遇到break语句,python二话不说,马上就会跳出循环体。
即便这时候循环体内还有待执行的语句python也不会管你的。
测试一下:
>>> while True:
answer = input("哥,我能退出循环了吗?")
if answer == "可以":
break
print("唉,好累,感觉不会再爱了")
执行结果:
哥,我能退出循环了吗?不行
唉,好累,感觉不会再爱了
哥,我能退出循环了吗?继续
唉,好累,感觉不会再爱了
哥,我能退出循环了吗?坚持
唉,好累,感觉不会再爱了
哥,我能退出循环了吗?可以
>>>
1.3 continue
语句
continue
表示我先出去一下,但这事没完,我还会回来的。
continue
会跳出循环体,但是,他只是跳出本轮循环,它还会回到循环体的条件判断位置,然后继续下一轮的循环。如果条件还成立的话,那么他就会执行下一轮的循环。
1.3.1 举个栗子
>>> i = 0
while i < 10:
i += 1
if i % 2 == 0:
continue
print(i)
执行结果:
1
3
5
7
9
1.4 else
语句
如果 while 后面的条件语句为 false 时,则执行 else 的语句块。
1.4.1 语法
while 循环条件:
条件成立时执行的循环体
else:
条件不成立时执行的语句
1.4.2 举个栗子
i = 1
while i < 5:
print("我在循环内,i的值是",i)
i += 1
else:
print("我在循环外,i的值是",i)
执行结果:
我在循环内,i的值是 1
我在循环内,i的值是 2
我在循环内,i的值是 3
我在循环内,i的值是 4
我在循环外,i的值是 5
这时候就有同学说了,你这不是多此一举嘛
i = 1
while i < 5:
print("我在循环内,i的值是",i)
i += 1
print("我在循环外,i的值是",i)
执行结果:
我在循环内,i的值是 1
我在循环内,i的值是 2
我在循环内,i的值是 3
我在循环内,i的值是 4
我在循环外,i的值是 5
如果从一个循环体寿终正寝的角度来考虑,确实else没有起到什么特殊的效果。
但大家不要忘了break
语句。
break
语句是一个可以使得循环死于非命的家伙。
else
语句的定义是,当循环条件不再为真的时候,他才会被执行,那换言之,我们使用break
语句跳出循环是中途跳出来的,这时候他的条件依旧为真。所以,用break
语句跳出循环,else
语句里的内容并不会被执行。
比如:
i = 1
while i < 5:
print("我在循环内,i的值是",i)
if i == 2:
break
i += 1
else:
print("我在循环外,i的值是",i)
执行结果:
我在循环内,i的值是 1
我在循环内,i的值是 2
举个栗子:
每周学习打卡小程序
day = 1
while day <= 7:
answer = input("今天你学python了吗?")
if answer != "yes":
break
day += 1
else:
print("恭喜,你已经坚持了7天连续学习!再接再厉~")
执行结果:
今天你学python了吗?yes
今天你学python了吗?yes
今天你学python了吗?yes
今天你学python了吗?yes
今天你学python了吗?yes
今天你学python了吗?yes
今天你学python了吗?yes
恭喜,你已经坚持了7天连续学习!再接再厉~
>>>

作者介绍