zoukankan      html  css  js  c++  java
  • Python range()函数

    The range() constructor returns an immutable sequence object of integers between the given start integer to the stop integer. 

    range() constructor has two forms of definition:

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

    range() Parameters

    range() takes mainly three arguments having the same use in both definitions:

      • start - integer starting from which the sequence of integers is to be returned
      • stop - integer before which the sequence of integers is to be returned.
        The range of integers end at stop - 1.
      • step (Optional) - integer value which determines the increment between each integer in the sequence

    Return value from range()

    range() returns an immutable sequence object of integers depending upon the definitions used:

    range(stop)

    • Returns a sequence of numbers starting from 0 to stop - 1
    • Returns an empty sequence if stop is negative or 0.

    range(start, stop[, step])

    The return value is calculated by the following formula with the given constraints:

     r[n] = start + step*n (for both positive and negative step)
     where, n >=0 and r[n] < stop (for positive step)
     where, n >= 0 and r[n] > stop (for negative step)
      • (If no step) Step defaults to 1. Returns a sequence of numbers starting from start and ending at stop - 1.
      • (if step is zero) Raises a ValueError exception
      • (if step is non-zero) Checks if the value constraint is met and returns a sequence according to the formula
        If it doesn't meet the value constraint, Empty sequence is returned.

    Example 1: How range works in Python?

    1 # empty range
    2 print(list(range(0)))
    3 
    4 # using range(stop)
    5 print(list(range(10)))
    6 
    7 # using range(start, stop)
    8 print(list(range(1, 10)))

    When you run the program, the output will be:

    []
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    [1, 2, 3, 4, 5, 6, 7, 8, 9]

    Note: We've converted the range to a Python list, as range() returns a generator-like object that only prints the output on demand.

    However, the range object returned by the range constructor can also be accessed by its index. It supports both positive and negative indices.

    You can access the range object by index as:

    rangeObject[index]

    Example 2: Create a list of even number between the given numbers using range()

    1 start = 2
    2 stop = 14
    3 step = 2
    4 
    5 print(list(range(start, stop, step)))

    When you run the program, the output will be:

    [2, 4, 6, 8, 10, 12]

    Example 3: How range() works with negative step?

    1 start = 2
    2 stop = -14
    3 step = -2
    4 
    5 print(list(range(start, stop, step)))
    6 
    7 # value constraint not met
    8 print(list(range(start, 14, step)))

    When you run the program, the output will be:

    [2, 0, -2, -4, -6, -8, -10, -12]
    []

    转载:https://www.programiz.com/python-programming/methods/built-in/range

  • 相关阅读:
    0101
    正则表达式 re模块
    经典算法>>mor-c3 / 删除排序
    网络编程
    面向对象>>类(三大特性:继承多态封装)>>反射,内置函数/方法,
    经典算法>冒泡 和二分法
    Apollo 5.0 障碍物行为预测技术
    一种新颖鲁棒的自动驾驶车辆换道轨迹规划方法
    自动驾驶中轨迹规划的探索和挑战
    Lattice Planner规划算法
  • 原文地址:https://www.cnblogs.com/xyu1/p/7148391.html
Copyright © 2011-2022 走看看