Flash cards
Review the key moves
What is the main idea behind Python - Sort Lists?
Lesson checks
Practice each idea before moving on
Short Mimo-style checks built from this lesson's code, terms, and sequence.
Which statement best captures the main point of this lesson?
Complete the missing token from the example code.
___ = ["orange", "mango", "kiwi",Put the learning moves in the order that makes the concept easiest to apply.
Sort List Alphanumerically
List objects have a sort() method that will sort the list alphanumerically, ascending, by default:
Example
thislist = ["orange", "mango", "kiwi",
"pineapple", "banana"]
thislist.sort()
print(thislist)Example
thislist = [100, 50, 65, 82, 23]
thislist.sort()
print(thislist)Sort Descending
To sort descending, use the keyword argument reverse = True :
Example
thislist = ["orange", "mango", "kiwi",
"pineapple", "banana"]
thislist.sort(reverse = True)
print(thislist)Example
thislist = [100, 50, 65, 82, 23]
thislist.sort(reverse = True)
print(thislist)Customize Sort Function
You can also customize your own function by using the keyword argument key = function .
The function will return a number that will be used to sort the list (the lowest number first):
Example
def myfunc(n):
return abs(n - 50)
thislist = [100, 50, 65, 82, 23]
thislist.sort(key =
myfunc)
print(thislist)Case Insensitive Sort
By default the sort() method is case sensitive, resulting in all capital letters being sorted before lower case letters:
Example
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort()
print(thislist)Expected output
thislist = ["banana", "Orange", "Kiwi", "cherry"] thislist.sort() print(thislist)
Luckily we can use built-in functions as key functions when sorting a list.
So if you want a case-insensitive sort function, use str.lower as a key function:
Example
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort(key
= str.lower)
print(thislist)Reverse Order
What if you want to reverse the order of a list, regardless of the alphabet?
The reverse() method reverses the current sorting order of the elements.
Example
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.reverse()
print(thislist)