Khởi tạo VPS trong 60 giây · Hoàn tiền trong 7 ngày · Hỗ trợ kỹ thuật 24/7
Bitech Bitech
Hướng dẫn

Cách tìm kiếm chuỗi trong List Python: 4 phương pháp hiệu quả nhất

Hướng dẫn chi tiết các cách tìm kiếm chuỗi trong List Python sử dụng toán tử in, hàm index(), List Comprehension và Regex kèm ví dụ mã nguồn cụ thể.

Trong quá trình phát triển ứng dụng bằng Python, tìm kiếm một chuỗi ký tự (string) trong danh sách (list) là một trong những thao tác cơ bản và phổ biến nhất. Tùy thuộc vào yêu cầu bài toán — cần kiểm tra sự tồn tại, lấy chỉ số (index) hay tìm kiếm chuỗi theo mẫu (pattern) — bạn có thể áp dụng các phương pháp khác nhau.

Bài viết này Bitech sẽ hướng dẫn bạn 4 cách tìm chuỗi trong List Python phổ biến nhất kèm ví dụ thực tế có thể chạy trực tiếp.

1. Sử dụng toán tử in

Nếu bạn chỉ cần kiểm tra xem một chuỗi có xuất hiện trong danh sách hay không, toán tử in là cách nhanh nhất và trực quan nhất. Phương thức này trả về giá trị kiểu Boolean (True hoặc False).

fruits = ["apple", "banana", "cherry", "orange"]

# Kiểm tra sự tồn tại
if "banana" in fruits:
    print("Tìm thấy banana trong danh sách!")
else:
    print("Không tìm thấy!")

2. Sử dụng phương thức index()

Khi bạn cần biết chính xác vị trí (chỉ số - index) của chuỗi trong danh sách, hãy sử dụng phương thức index(). Lưu ý: Nếu chuỗi không tồn tại trong list, Python sẽ báo lỗi ValueError, do đó bạn nên kết hợp với khối try-except để xử lý ngoại lệ an toàn.

fruits = ["apple", "banana", "cherry", "orange"]

try:
    pos = fruits.index("cherry")
    print(f"Tìm thấy 'cherry' tại vị trí index: {pos}")
except ValueError:
    print("Chuỗi không tồn tại trong danh sách.")

3. Sử dụng List Comprehension (Tìm chuỗi con)

Phương pháp sử dụng toán tử in ở trên chỉ áp dụng khi so sánh khớp chính xác toàn bộ chuỗi. Nếu bạn muốn tìm các phần tử có chứa một chuỗi con (substring) hoặc áp dụng lọc điều kiện, List Comprehension là lựa chọn tối ưu và ngắn gọn.

data = ["python code", "java script", "python programming", "c++"]

# Tìm các phần tử có chứa từ "python"
results = [item for item in data if "python" in item.lower()]

print("Các chuỗi phù hợp:", results)
# Kết quả: ['python code', 'python programming']

4. Sử dụng Biểu thức chính quy (Regex)

Đối với các tác vụ tìm kiếm nâng cao như tìm chuỗi theo mẫu (ví dụ: bắt đầu bằng một từ, tìm email, số điện thoại) hoặc không phân biệt chữ hoa chữ thường, module re trong Python cung cấp giải pháp mạnh mẽ.

import re

words = ["Cat", "dog", "Category", "caterpillar", "apple"]
pattern = r"^cat"  # Khớp các từ bắt đầu bằng "cat"

# Tìm kiếm không phân biệt hoa thường bằng re.IGNORECASE
matched = [word for word in words if re.search(pattern, word, re.IGNORECASE)]

print("Kết quả tìm kiếm Regex:", matched)
# Kết quả: ['Cat', 'Category', 'caterpillar']

Tóm tắt nên dùng cách nào?

  • Toán tử in: Dùng khi chỉ cần kiểm tra chuỗi có xuất hiện trong list hay không.
  • Phương thức index(): Dùng khi cần lấy chính xác vị trí chỉ số của chuỗi.
  • List Comprehension: Dùng khi cần lọc nhiều kết quả hoặc tìm kiếm theo chuỗi con.
  • Regex (re): Dùng khi cần tìm kiếm chuỗi theo quy tắc/mẫu phức tạp.

Ngày phát hành: 16/06/2026
Nguồn: www.digitalocean.com