【Python 第12课】for循环


大家对 while 循环已经有点熟悉了吧?今天我们来讲另一种循环语句:

for ... in ...

 

同 while 一样,for 循环可以用来重复做一件事情。在某些场景下,它比 while 更好用。

 

比如之前的一道习题:输出1到100(公众号中的练习题3)。

 

我们用while来做,需要有一个值来记录已经做了多少次,还需要在 while 后面判断是不是到了100。

 

如果用for循环,则可以这么写:

for i in range(1, 101):
   print(i)

   

解释一下,range(1, 101) 表示从1开始,到101为止(不包括101,注意这里和 randint 不一样),取其中所有的整数。

 

for i in range(1, 101) 就是说,把这些数,依次赋值给变量i。

 

相当于一个一个循环过去,第一次 i = 1,第二次 i = 2,……,直到 i = 100。当 i = 101 时跳出循环。

 

所以,当你需要一个循环10次的循环,你就只需要写:

 

for i in range(1, 11)

 

或者

for i in range(0, 10)

 

区别在于前者i是从1到10,后者 i 是从0到9。当然,你也可以不用 i 这个变量名,换成其他合法的变量名也可以。

 

比如一个循环n次的循环:

for count in range(0, n)

 

for 循环的本质是对一个序列中的元素进行遍历。什么是序列,以后再说。先记住这个最简单的形式:

for i in range(a, b)

就是从 a 循环至 b-1

 

现在,你可以用 for 循环来改写 习题3~习题6 了。(小程序无法跳转的话可从公众号内菜单进入习题)

来源:Crossin的编程教室