当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python range用法及代码示例


用法:

class range(stop)
class range(start, stop[, step])

范围构造函数的参数必须是整数(内置 int 或任何实现 __index__() 特殊方法的对象)。如果省略 step 参数,则默认为 1 。如果省略 start 参数,则默认为 0 。如果step 为零,则引发ValueError

对于正数 step ,范围 r 的内容由公式 r[i] = start + step*i 确定,其中 i >= 0r[i] < stop

对于负数 step ,范围的内容仍由公式 r[i] = start + step*i 确定,但约束为 i >= 0r[i] > stop

如果r[0] 不满足值约束,则范围对象将为空。范围确实支持负索引,但这些被解释为从由正索引确定的序列末尾开始的索引。

允许包含大于 sys.maxsize 的绝对值的范围,但某些函数(例如 len() )可能会引发 OverflowError

范围示例:

>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list(range(1, 11))
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> list(range(0, 30, 5))
[0, 5, 10, 15, 20, 25]
>>> list(range(0, 10, 3))
[0, 3, 6, 9]
>>> list(range(0, -10, -1))
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> list(range(0))
[]
>>> list(range(1, 0))
[]

Ranges 实现了除了连接和重复之外的所有常见序列操作(因为范围对象只能表示遵循严格模式的序列,而重复和连接通常会违反该模式)。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 range。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。