DEV Community

STYT-DEV
STYT-DEV

Posted on

Creating a Python Function to Evenly Split a Range of Numbers

This article explains how to create a Python function that evenly splits a given range of numbers and returns the intervals as a list. This function is useful when you need to divide a numerical range into equal segments.

Function Specifications

  • Return Value: A list of evenly divided intervals (e.g., [[1,3], [4,6], [7,9], [10,12]])
  • Arguments:
    • end: The end point of the range to be divided (12 in this example)
    • parts: The number of segments to divide into (3 in this example)

Implementation

The function uses the range function and list comprehension to divide the specified range into equal parts. Here is the implementation:

def split_range(end, parts):
    step = end // parts
    return [[i + 1, min(i + step, end)] for i in range(0, end, step)]

# Example usage of the function
result = split_range(12, 3)
print(result)  # [[1, 3], [4, 6], [7, 9], [10, 12]]
Enter fullscreen mode Exit fullscreen mode

Explanation of the Function

  • The split_range function divides the given range into parts number of equal segments.
  • The variable step calculates the size of each segment. In this example, it is 12 // 3 = 4.
  • List comprehension is used to calculate the start and end points of each segment and add them to the list.
  • This function is handy when you need to evenly split a range of numbers for tasks like batch processing of data or analyzing specific numerical ranges.

Use Cases

This function can be useful, for example, when you need to batch process data or analyze a specific numerical range in equal segments. It can be used in situations like data batch processing or segmenting a range for analysis.

Top comments (0)