bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/Python/Foundations
Python•Foundations

Python - Sort Lists

Flash cards

Review the key moves

1/4
Core idea

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.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ = ["orange", "mango", "kiwi",
3Order

Put the learning moves in the order that makes the concept easiest to apply.

Case Insensitive Sort
Customize Sort Function
Sort List Alphanumerically

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)

Previous

Python - List Comprehension

Next

Python - Copy Lists