在循环结构上篇讲述 for-in 循环时,有一个 range 方法的知识点没给大家讲,本篇文章我们单独给大家做一个详细讲解。
range 方法的作用就是根据给定的 start、stop、step 三个参数,生成一个包含有规律整数的容器。
以下是 range 的语法规则:range(start, stop, step)
我们对这几个参数做出解释:
- 可以理解 start 为左闭区间,stop 为右开区间,step 为等差序列的差;
- range 方法就是依靠上述三个参数,从 start 开始,利用 step 去构造 [start, stop) 范围内的等差序列;
- start 与 step 参数可以忽略不写,如果 start 忽略则为 0,如果 step 忽略则为 1。但是如果 step 没有忽略,start 也不能忽略;
- 在 [start, stop) 范围内生成的整数规则为:从 start 开始,下一次生成的整数为 start + step;
- 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