The most basic way to sort a list of numbers in Python is by using the .sort() method. This works for both ascending and descending orders. Examples:
Using sort()
Let's create a list:
import random
myList = [i for i in range(10)]
random.shuffle(myList)
print(myList)
Output
[4, 9, 8, 7, 0, 3, 5, 2, 6, 1]
Ascending order
For an ascending order, simply call the .sort() method on your list and it will arrange all values from lowest to highest
myList.sort()
print(myList)
Ouput
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Descending order
If you wish to sort the list in descending order, use the reverse flag - set it to True and the list will be arranged from highest to lowest. It can be done like this: my_list.sort(reverse=True).
myList.sort(reverse=True)
print(myList)
output
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
Using sorted()
Another option is to use the sorted() function which has similar syntax as sort(). The main difference between them is that sorted() will return a new sorted list while .sort() sorts the original one.
Ascending order
To use it, simply call the sorted() function and pass it your list as an argument.
newList = sorted(myList)
print( newList )
Ouput
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Note that with sorted() the original list myList is not modified
myList
Ouput
[4, 9, 8, 7, 0, 3, 5, 2, 6, 1]
Can be used in a loop, example:
>>> for i in sorted(l):
... print(i)
...
0
1
2
3
4
5
6
7
8
9
Descending order
To get the list in descending order just use reverse=True
sorted(l,reverse=True)
Ouput
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]