How to generate 7 random numbers out of 33 (1-33) in Python

1 Answer

0 votes
import random


def generate_random_numbers(count: int, max_number: int) -> list[int]:
    """
    Generate 'count' unique random numbers from 1..max_number.

    Args:
        count: Number of random values to generate.
        max_number: Upper bound of the range (inclusive).

    Returns:
        A list containing unique random numbers.

    Raises:
        ValueError: If count is greater than max_number.
    """
    if count > max_number:
        raise ValueError(
            "count cannot be greater than max_number"
        )

    # random.sample() returns unique values without replacement
    return random.sample(range(1, max_number + 1), count)


# Example usage
numbers = generate_random_numbers(7, 33)

# Optional
numbers.sort()

print("Random numbers:", numbers)


'''
run:

Random numbers: [7, 14, 16, 22, 24, 28, 33]

'''

 



answered Oct 28 by avibootz
...