Python3 range() 函数

Python3 range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。

Python3 list() 函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。

Python2 range() 函数返回的是列表。

函数语法

  1. range(stop)
  2. range(start, stop[, step])

参数说明:

  • start:计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
  • stop:计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
  • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

实例

  1. >>>range(5)
  2. range(0, 5)
  3. >>> for i in range(5):
  4. ... print(i)
  5. ...
  6. 0
  7. 1
  8. 2
  9. 3
  10. 4
  11. >>> list(range(5))
  12. [0, 1, 2, 3, 4]
  13. >>> list(range(0))
  14. []
  15. >>>

有两个参数或三个参数的情况(第二种构造方法):

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