从零开始学Python系列课程第15课:range 方法详解

在循环结构上篇讲述 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)。

python 复制代码
for i in range(0, 11, 2):
    print(i, end='')
# 结果:0246810
相关推荐
geovindu4 小时前
CSharp: 万年历
开发语言·后端·c#·.net
傲笑风4 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
我找到地球的支点啦5 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
维基框架5 小时前
WIKI 知识库 v1.1.1 正式发布
人工智能·python
予昊5 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
weixin_461408585 小时前
Mybatis-flex小记
java·开发语言·mybatis
青梅味猪大肠6 小时前
【深入浅出C++】为什么虚表指针可以解决菱形继承
开发语言·c++
潘潘的嵌入式日记6 小时前
I²C 从机接收总被覆盖?双缓冲要在 STOP 时交接
c语言·开发语言·单片机
Lhan.zzZ7 小时前
QML 组件库:VS2022 + Qt 静态库方案
开发语言·c++·qt·visual studio
敲代码的嘎仔7 小时前
28届后端开发-海康威视日常实习一面(已OC)
java·开发语言·后端·面试·海康威视·实习·大厂