Danh sách của danh sách

Bài 5/5 · khoảng 6 phút đọc

Phần tử của danh sách có thể cũng là danh sách. Cách này dùng để biểu diễn bảng nhiều hàng, nhiều cột — ví dụ bảng điểm của nhiều bạn.

Python
bang_diem = [
[8, 9, 7],
[6, 7, 8],
[10, 9, 9],
]
print(bang_diem[0])
print(bang_diem[1][2])

bang_diem[1] là hàng thứ hai; bang_diem[1][2] là phần tử thứ ba trong hàng đó.

Duyệt bảng

Python
bang_diem = [[8, 9, 7], [6, 7, 8], [10, 9, 9]]
for hang in bang_diem:
tong = sum(hang)
print(hang, "→ trung bình", round(tong / len(hang), 2))

Danh sách học sinh

Python
hoc_sinh = [
["An", 8.5],
["Bình", 9.0],
["Chi", 7.5],
]
for ten, diem in hoc_sinh:
print(ten, diem)
hoc_sinh.sort(key=lambda hs: hs[1], reverse=True)
print("Cao nhất:", hoc_sinh[0][0])

Phần key=lambda hs: hs[1] bảo sort sắp xếp theo điểm (phần tử thứ hai) — bạn sẽ hiểu rõ hơn khi học sâu hơn.

Ghi nhớ: danh sách lồng nhau biểu diễn bảng; truy cập ds[hàng][cột]; duyệt bằng vòng lặp lồng nhau hoặc for hang in ds.

Với `b = [[1, 2], [3, 4]]`, `b[1][0]` là gì?

3: hàng thứ hai là [3, 4], phần tử đầu của nó là 3.

Danh sách của danh sách · Lý thuyết Python · PyKid