A list is an ordered, mutable sequence. Square brackets, commas between items.
Goal
Index, slice, append, and unpack a list.
Build and read
cities = ["Nairobi", "Mombasa", "Kisumu", "Nakuru"]
print(cities[0], cities[-1])
print(cities[1:3])
print(len(cities))
print("Kisumu" in cities)Mutate
scores = [98, 91, 95]
scores.append(88)
scores.extend([70, 64])
scores[1] = 92
print(scores)
print(scores.pop())
print(scores)append adds one item. extend adds each item from another sequence. pop() removes the last item (or pop(i) at index i).
Loop a list
for city in ["Nairobi", "Mombasa", "Kisumu"]:
print(city.upper())Unpack
first, second, *rest = ["Ada", "Alan", "Grace", "Linus"]
print(first, second, rest)Sort (copy vs in place)
scores = [91, 98, 70, 95]
print(sorted(scores))
print(scores)
scores.sort()
print(scores)
print(sorted(["Nia", "Ada", "Grace"], reverse=True))sorted returns a new list. .sort() changes the list and returns None.
Tip
A list of lists is fine: rows = [["Ada", 98], ["Alan", 91]]. For named fields, prefer a dict (next chapters).