Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Selected Reading
Python – Random range in a List
When you need to generate a list of random numbers within a specific range, Python's random.randrange() method combined with list comprehension provides an efficient solution.
Syntax
The random.randrange() function generates random integers within a specified range ?
random.randrange(start, stop, step)
- start − Starting value (inclusive)
- stop − Ending value (exclusive)
- step − Step size (optional, default is 1)
Basic Example
Generate 10 random numbers between 1 and 100 ?
import random
my_result = [random.randrange(1, 100, 1) for i in range(10)]
print("The result is :")
print(my_result)
The result is : [40, 73, 58, 45, 68, 19, 86, 6, 15, 71]
Different Range Examples
Even Numbers Only
Generate random even numbers by using step=2 ?
import random
even_numbers = [random.randrange(2, 21, 2) for i in range(5)]
print("Random even numbers:", even_numbers)
Random even numbers: [14, 8, 18, 6, 12]
Negative Range
Generate random numbers in negative range ?
import random
negative_numbers = [random.randrange(-50, 0) for i in range(5)]
print("Random negative numbers:", negative_numbers)
Random negative numbers: [-23, -41, -7, -35, -18]
Using Different Methods
Using random.randint()
Alternative approach with randint() which includes both endpoints ?
import random
# randint includes both start and end values
random_list = [random.randint(1, 100) for i in range(8)]
print("Using randint():", random_list)
Using randint(): [45, 89, 23, 67, 12, 91, 34, 76]
Comparison
| Method | End Value | Step Support | Best For |
|---|---|---|---|
randrange() |
Exclusive | Yes | Custom steps, precise control |
randint() |
Inclusive | No | Simple integer ranges |
How It Works
- The
randommodule is imported to access random number functions - List comprehension iterates the specified number of times
-
randrange(1, 100, 1)generates random integers from 1 to 99 (100 is excluded) - Each iteration produces a new random number added to the list
Conclusion
Use random.randrange() with list comprehension to generate lists of random numbers within specific ranges. This method offers flexibility with step values and precise range control for various random number generation needs.
Advertisements
