查看源码:
class range(object):
"""
range(stop) -> range object
range(start, stop[, step]) -> range object
Return an object that produces a sequence of integers from start (inclusive)
to stop (exclusive) by step. range(i, j) produces i, i+1, i+2, ..., j-1.
start defaults to 0, and stop is omitted! range(4) produces 0, 1, 2, 3.
These are exactly the valid indices for a list of 4 elements.
When step is given, it specifies the increment (or decrement).
"""
def count(self, value): # real signature unknown; restored from __doc__
""" rangeobject.count(value) -> integer -- return number of occurrences of value """
return 0
def index(self, value): # real signature unknown; restored from __doc__
"""
rangeobject.index(value) -> integer -- return index of value.
Raise ValueError if the value is not present.
"""
return 0
def __bool__(self, *args, **kwargs): # real signature unknown
""" True if self else False """
pass
def __contains__(self, *args, **kwargs): # real signature unknown
""" Return key in self. """
pass
def __eq__(self, *args, **kwargs): # real signature unknown
""" Return self==value. """
pass
def __getattribute__(self, *args, **kwargs): # real signature unknown
""" Return getattr(self, name). """
pass
def __getitem__(self, *args, **kwargs): # real signature unknown
""" Return self[key]. """
pass
def __ge__(self, *args, **kwargs): # real signature unknown
""" Return self>=value. """
pass
def __gt__(self, *args, **kwargs): # real signature unknown
""" Return self>value. """
pass
def __hash__(self, *args, **kwargs): # real signature unknown
""" Return hash(self). """
pass
def __init__(self, stop): # real signature unknown; restored from __doc__
pass
def __iter__(self, *args, **kwargs): # real signature unknown
""" Implement iter(self). """
pass
def __len__(self, *args, **kwargs): # real signature unknown
""" Return len(self). """
pass
def __le__(self, *args, **kwargs): # real signature unknown
""" Return self<=value. """
pass
def __lt__(self, *args, **kwargs): # real signature unknown
""" Return self<value. """
pass
@staticmethod # known case of __new__
def __new__(*args, **kwargs): # real signature unknown
""" Create and return a new object. See help(type) for accurate signature. """
pass
def __ne__(self, *args, **kwargs): # real signature unknown
""" Return self!=value. """
pass
def __reduce__(self, *args, **kwargs): # real signature unknown
pass
def __repr__(self, *args, **kwargs): # real signature unknown
""" Return repr(self). """
pass
def __reversed__(self, *args, **kwargs): # real signature unknown
""" Return a reverse iterator. """
pass
start = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
step = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
stop = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- range() 是python的一个内置函数,返回的是一个可迭代对象,用于创建数字序列。
- 语法格式: range(start,stop,step) 即 range(初值,终值,步长)
- 创建方式:
1、只有一个参数:range(stop)
range(10): 默认从0开始,步长为1,不包括10;
r = range(10)
print(r)
运行结果:
range(0, 10)
如果将序列中的数字全部输出,则执行print(list(r))
运行结果如下:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2、有两个参数:range(start,stop)
range(1,100) :默认从1开始到99,步长为1
r1 = range(1,15)
print(list(r1))
执行结果:‘
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
3、有三个参数:range(start,stop,step)
range(1,15,2) 指从1开始到14,步长2
r2 = range(1,15,2)
print(list(r2))
运行结果:
[1, 3, 5, 7, 9, 11, 13]
- 用处:
1、range()函数可是使用in 、not in来判断整数序列中是否存在指定的整数;
2、使用range()构建for循环
for i in range(1,20,3):
print(i)
执行结果:
1
4
7
10
13
16
19
3、使用range()可以生成固定长度的等差数列
r3 = [2+3*i for i in range(1,5)]
print(list(r3))
运行结果如下:
[5, 8, 11, 14]