Trong lập trình, việc chọn đúng cấu trúc dữ liệu giống như việc chọn đúng loại tủ để cất đồ. Nếu chọn sai, code của bạn sẽ chạy chậm, tốn RAM và cực kỳ khó bảo trì.
Python cung cấp 4 “chiếc tủ” quyền năng: List, Tuple, Dictionary và Set. Mỗi cái sinh ra cho một mục đích riêng. Hãy cùng khám phá xem khi nào nên dùng cái nào nhé!
1. Bảng so sánh nhanh 4 cấu trúc dữ liệu
Để giúp bạn có cái nhìn tổng quan nhất, hãy tham khảo bảng dưới đây. Đây là tiêu chí vàng để bạn quyết định cấu trúc dữ liệu cho dự án của mình.
2. List và Tuple – Những danh sách có thứ tự
Cả hai đều dùng để lưu trữ một chuỗi các phần tử. Tuy nhiên:
* List [ ]: Có thể thay đổi (Mutable). Bạn có thể thêm, sửa, xóa phần tử thoải mái.
* Tuple ( ): Không thể thay đổi (Immutable). Một khi đã tạo ra là “đóng băng” mãi mãi. Dùng để lưu các dữ liệu hằng số (ví dụ: tọa độ GPS).
Kỹ thuật Indexing và Slicing (Cắt mảng)
Đây là kỹ năng “vỡ lòng” nhưng cực kỳ quan trọng để bạn lấy được đúng phần dữ liệu mình cần trong một danh sách dài.

fruits = ["Apple", "Banana", "Cherry", "Date"]
# Slicing: lấy từ index 1 đến 3 (không bao gồm 3)
print(fruits[1:3]) # Output: ["Banana", "Cherry"]
3. Set – Tập hợp các phần tử duy nhất
Nếu bạn có một danh sách email và muốn loại bỏ các email trùng lặp chỉ trong 1 dòng code, hãy dùng Set { }. Set chỉ lưu trữ các giá trị độc nhất và không có thứ tự.
numbers = {1, 2, 2, 3, 4, 4}
print(numbers) # Output: {1, 2, 3, 4}
4. Dictionary – Cặp Chìa khóa & Giá trị (Key-Value)
Giống như một cuốn từ điển thực thụ, bạn tra cứu Nghĩa (Value) thông qua Từ vựng (Key). Đây là cấu trúc dữ liệu cực mạnh để lưu trữ thông tin đối tượng (User, Product…).
user = {
"name": "Thanh DT",
"job": "Python Dev",
"location": "Vietnam"
}
print(user["name"]) # Output: Thanh DT
Hiểu về dữ liệu là tốt, nhưng nếu code của bạn cứ viết dàn trải từ trên xuống dưới thì sẽ rất khó tái sử dụng. Đó là lý do bạn cần đến Hàm (Functions).
Bài tiếp theo sẽ hướng dẫn bạn cách viết code “một lần dùng mãi mãi”.
👉 Hướng dẫn viết hàm & sử dụng module trong Python
Đón xem bài tiếp theo: Lập trình hàm trong Python: Cách viết code gọn gàng và chuyên nghiệp!**