Python range函数

Python range函数Pythonrange 函数的介绍 使用方法以及注意事项

目录

描述

语法

返回值

使用示例

1. 仅保留stop参数

2. 指定起始位置和终止位置

3. 指定步长

使用注意

1. 所有参数都是整形。不能给出浮点数序列

2. 当start参数省略时,step参数也必须省略

3. step小于1没有任何意义

4. 步长不能为0

5. range()的返回值类型是range


描述

range函数返回一个range类型的整数序列,一般用在循环结构中。

语法

range(start, stop, step)
参数名称 说明 备注
start 计数起始位置 整数参数,可省略。省略时默认从0开始计数
stop 计数终点位置 不可省略的整数参数。计数迭代的序列中不包含stop
step 步长 可省略的整数参数,默认时步长为1

返回值

range函数返回一个range对象实例。实例包含了计数的起始位置、终点位置和步长等信息。

使用示例

1. 仅保留stop参数

>>> test = range(10) >>> test range(0, 10) >>> list(test) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

2. 指定起始位置和终止位置

>>> test = range(3,10) >>> test range(3, 10) >>> list(test) [3, 4, 5, 6, 7, 8, 9]

3. 指定步长

>>> test = range(0, 10, 2) >>> test range(0, 10, 2) >>> tuple(test) (0, 2, 4, 6, 8)

使用注意

1. 所有参数都是整形。不能给出浮点数序列

>>> range(0.1, 0.3) Traceback (most recent call last): File " 
   
     ", line 1, in 
    
      TypeError: 'float' object cannot be interpreted as an integer 
     
   

2. 当start参数省略时,step参数也必须省略

当star参数省略的时候,step参数也应省略。否则Python会自动将step参数理解为stop,将stop理解为start

例如想给出一个从0到14的序列,步长为2。可是输出的序列转换成列表后却是空列表:

>>> test = range(10, 2) >>> list(test) []

    产生这种现象的原因就是python总是把双参数的range函数当作为range(start,stop)。即一个从10开头,到2结尾的序列。这样的序列是没有任何数字的空序列,因此在转换成列表的过程中,就产生了空列表。

3. step小于1没有任何意义

不同于字符串和列表的分片,range函数中的step并不能将序列反向。当step小于1的时候,序列为空:

>>> test = range(-10, -2, -3) >>> list(test) []

4. 步长不能为0

当step参数为0时,Python报错:range()函数的第三个参数不能为0

>>> test = range(-10, 2, 0) Traceback (most recent call last): File " 
   
     ", line 1, in 
    
      ValueError: range() arg 3 must not be zero 
     
   

5. range()的返回值类型是range

在Python3中,range函数的返回值类型不再是列表,而是一个range类型。使用者可以使用list函数继续再将其转化成列表。

>>> test = range(5) >>> type(test) 
   
     >>> list(test) [0, 1, 2, 3, 4] >>> 
   

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204867.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午7:21
下一篇 2026年3月19日 下午7:21


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号