在循环结构上篇讲述 for-in 循环时,有一个 range 方法的知识点没给大家讲,本篇文章我们单独给大家做一个详细讲解。
range 方法的作用就是根据给定的 start、stop、step 三个参数,生成一个包含有规律整数的容器。
以下是 range 的语法规则:range(start, stop, step)
我们对这几个参数做出解释:

  1. 可以理解 start 为左闭区间,stop 为右开区间,step 为等差序列的差;
  2. range 方法就是依靠上述三个参数,从 start 开始,利用 step 去构造 [start, stop) 范围内的等差序列;
  3. start 与 step 参数可以忽略不写,如果 start 忽略则为 0,如果 step 忽略则为 1。但是如果 step 没有忽略,start 也不能忽略;
  4. 在 [start, stop) 范围内生成的整数规则为:从 start 开始,下一次生成的整数为 start + step;
  5. step 必须为不等于 0 的整数,如果 step >= 1,我们要求 start 要小于 stop;如果 step <= -1,要求 start 要大于 stop。

我们举几个例子来给大家演示 range 如何使用:

  • range(1, 10, 1):可以生成包含 1~9 的容器。
  • range(20, 21):可以生成包含 20 的容器。
  • range(20):可以生成包含 0~19 的容器。
  • range(1, 10, 3):可以生成包含 1、4、7 的容器。
  • range(4, -1, -2):可以生成包含 4、2、0 的容器。

我们再结合 for-in 循环打印 10 以内 2 的倍数(包括 10)。

for i in range(0, 11, 2):print(i, end='')# 结果:0246810