I'd like to generate a set of x unique random numbers and sort them in Python. For example: range(1000, 10000) x = 100
I've figured out to import random and use the random.randrange method, then loop to get 100 random numbers and in the end sort them.
However, I don't know how to get unique numbers (such that they do not repeat) - should I validate each and every loop? Or is there any other easier way how to do it? And how should I sort them?
Use random.sample
numbers = random.sample(xrange(1000, 10000), 100) # or `range` in Python 3
The sorting part is easy - use the list.sort
method.
numbers.sort()
By default this will sort it from smallest number to largest, but it takes an optional key
argument which determines what to sort it on.
There is also a sorted
function which doesn't modify a list in-place, but rather returns a sorted list.
numbers_sorted = sorted(numbers)
This also has an optional key
argument.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With