首页 > 代码库 > 循环的使用
循环的使用
while和for,两种循环的区别是,while循环之前,先判断一次,如果满足条件的话,再循环,for循环的时候必须有一个可迭代的对象,才能循环,比如说得有一个数组,python中for循环很简单,循环的是一个可迭代对象中的元素
循环里面还有两个比较重要的关键字,continue和break,continue的意思是,跳出本次循环,继续进行下一次循环,break的意思是停止循环,也就是说在continue和break下面的代码都是不执行的
一、for循环的使用:
for语句的格式如下:
>>>for <> in <对象集合>:
... if <条件>:
... break
... if <条件>:
... continue
... <其他语句>
...else:
... <>
...
顺便提一下range()函数。
range([start,] stop [, step])
# start 可选参数,起始数
#stop 终止数,如果 range 只有一个参数x,则产生一个包含 0 至 x-1 的整数列表
#step 可选参数,步长
案例一:for循环中range可以指定索引范围
for i in range(2,5):
print(i)
注意:其中2表示索引起始位置,5-1表示索引结束位置。注意,2,和5可以用变量代替
输出结果如下:
2
3
4
案例二:for循环中range可以指定步进
for i in range(2,5,2):#注意,第三位,可以指定步进。
print(i)
输出结果如下:
2
4
案例三:Python中的降序排序
for i in range(5,0,-1):
print(i)
输出结果:
5
4
3
2
1
案例四:降序也可以指定步进
for i in
range(5,0,-2):
print(i)
输出结果:
5
3
1
1.for循环包括多数计数器式的循环。一般而言,for比while容易些,执行时也比较快。所以每当你需要遍历序列时,都应该把它---for作为首选的工具。
2.你可以用while循环(while判断)以及手动索引运算编写这类独特的循环,但是python提供了两个内置函数,在for循环内定制迭代:
---内置range函数返回一系列连续增加的整数(类似c#中for循环中的i++),可作为for中的索引。
---内置zip函数返回并行元素的元祖的列表,可用于在for中内遍历数个序列
二、中断用法break与continue:
案例一:for循环中的continue
1 for i in range(10):#变量i带入for循环,通过rang()函数进行0到10的循环
2 if i==7:#插入条件语句if..continue,当i==7时,进入条件进行判断 由于continue的作用退出当前循环,不执行下面的print(i)(这个是关键)
3 continue
4 print(i)#打印i
上面这个循环打印出来是0 1 2 3 4 5 6 8 9,关键是没有7,因为7在循环的时候遇到continue直接退出了当前循环。由于for循环自己增加变量值的特性,退出以后直接从8开始继续循环。
案例二:for循环中的break
1 for i in range(10):
2 if i==7: #代码与前一个基本相同唯一改变的就是条件语句的continue变成了break。
3 break
4 print(i)
由于continue变成了break所以循环到7的时候直接退出整个循环(for退出整个循环以后不会再自己增加变量值循环了)。所以打印出来的为0 1 2 3 4 5 6.
案例三:while循环中的continue
1 x=0#输入一个变量x并且把它赋值为0。
2 while<10:#进入while<10的循环。
3 if x==7#进入条件语句判断变量是否为7,如果等于7 由于continue退出当前循环。
4 continue
5 print(x)#打印x
6 x=x+1#x+1以后再赋值给x
注意while循环和for循环有个一个本质上面的区别。for循环是知道长度并且可以自己增加变量值循环。但是while就无法做到自己增加变量值如果不用x+=1改变
变量值就好进入一个死循环不停的打印0.当我们增加了if...continue这个条件以后当x变量增加到7的时候。退出当前循环,由于不执行下面的代码print(i)和x=x+1.
所以x一直是7,当x为7再次进入while里面的时候又执行了continue。所以就产生了死循环。打印的结果为0 1 2 3 4 5 6.
案例四:while循环中的break
1 x=0
2 while<0:
3 if x==7
4 x=x+1;
5 continue
6 print(x)
7 x+=1
此代码在上面的一个基础上增加了x=x+1到if语句里面。这样当条件判断以后x由7变成8再进行循环的时候就不会受if的条件影响可以继续循环。最后打印结果为0 1 2 3 4 5 6 8 9.
break代替continue效果与for循环相同。直接跳出整个循环。打印结果为0 1 2 3 4 5 6.
循环的使用