在日常学习中,循环是使用最为频繁的一种结构。
所谓循环就是使程序反复执行一段代码。
python中有while循环和for循环两种类型
while循环
while循环:首先检查条件表达式,如果条件表达式的结果为True时,就执行后续代码。
举个例子:
炎炎夏日,你想吃一支冰棍,但没有钱。
于是你向你爸爸要钱,有以下两种情况:
- 你爸爸给你钱,你能吃到冰棍。
- 你爸爸不给你钱,你吃不到冰棍。
可以把给钱看成”True“,不给钱看成”False“。
while语句就是这样,首先检查你的结果是不是True,如果是就运行,如果不是就不运行。
我举一个python程序的例子:
str = input('请输入大于7的数字:')
while int(str) > 7:
print(str)
str = input()
运行结果如下:
当然,在应用while循环的时候要注意循环条件的设置,如果设置不合理很有可能导致死循环。
#正确
i = 1
while i <=100:
print(i)
i = i+1
#假如没有i= i+1这个条件,就会一直循环输出1
i = 1
while i <=100:
print(i)
for循环
for循环用于平时的循环和while循环一样,但很多时候用于从字符串、列表、元祖中取出元素。
比如我想提取学生的成绩:
studentscore = ['小张:99','小郭:98','小刘:97','小符:96','小韦:95']
for student in studentscore:
print(student)
运行结果如下:
如果想要输出大于96分的同学索引怎么办呢?
这时候需要用到enumerate函数。
studentscore = ['小张:99','小郭:98','小刘:97','小符:96','小韦:95']
for idx,student in enumerate(studentscore):
if int(student.split(':')[-1])>96:
print(idx)
假如我们需要使用for循环循环输出n次怎么办呢?
七夕节那天只能自己安慰自己,就这样吧!给自己一百个‘我爱你’
我们可以使用内置类型range。
for n in range(100):
print('我爱你')
range函数还可以输出一段数字,比如我们想要输出66到666中间数字。
for n in range(66,666):
print(n)
循环终止
前面说到循环,既然能够循环,就一定有能够终止循环!
终止循环有break和continue。
而这二者又有一些不同。
- break是跳过这次所有循环
- continue是跳过正在运行的本次循环开始后面的循环
举个例子:
break终止
i = 1
for i in range(100):
if i == 50:
break
print(i)
i = i + 1
运行到49就跳出了所有循环,停止运行。
continue循环
i = 1
for i in range(100):
if i == 50:
continue
print(i)
i = i + 1
我们可以看出,循环中直接跳过了50开始下一次运行!
这就是break和continue的区别!
好啦!今天的知识总结就到这里!
如果大家有什么疑问可以评论区留言或者私信我哈!