icantech
Lập trình chung
1953
28/12/2023

Tìm hiểu về hàm Enumerate trong Python

Khi làm việc với Python, việc duyệt qua các tập hợp dữ liệu như danh sách hay tuple là một nhu cầu thường xuyên. Trong bài viết này, hãy cùng ICANTECH tìm hiểu về cách hoạt động của enumerate nhé!

1. Enumerate là gì?

Enumerate trong Python là một hàm được sử dụng để liệt kê một danh sách (hoặc bất kỳ đối tượng có thể lặp lại nào khác) và trả về một đối tượng liệt kê, chứa các cặp (index, giá trị). Điều này giúp bạn dễ dàng truy cập vào cả index và giá trị của mỗi phần tử trong danh sách trong quá trình lặp.

Ví dụ trong Python, for là một câu lệnh lặp được sử dụng để duyệt qua một chuỗi (như danh sách, tuple, chuỗi ký tự), một tập hợp (set), hoặc bất kỳ đối tượng có thể lặp lại nào khác. Với mỗi lần lặp, một phần tử từ đối tượng được cung cấp cho khối mã bên trong câu lệnh for.

Cú pháp cơ bản của vòng lặp for trong Python:

for item in iterable:

   # Các lệnh được thực thi với mỗi phần tử 'item'

  • item: Biến này nhận giá trị từ đối tượng có thể lặp lại mỗi lần lặp.
  • iterable: Đối tượng có thể lặp lại, ví dụ như danh sách, tuple, chuỗi, set, hoặc các đối tượng tùy chỉnh có phương thức __iter__().

Ví dụ 1 về sử dụng for trong Python:

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

for fruit in fruits:

   print(fruit)

Kết quả

apple

banana

cherry

Ví dụ 2 sử dụng enumerate trong Python:

for index, animal in enumerate(animals):

   print(index, animal)

Kết quả: 

0 cat

1 dog

2 elephant

2. So sánh vòng for có Enumerate và không có Enumerate

Enumerate và vòng lặp thông thường (sử dụng chỉ một biến) trong Python đều cho phép bạn lặp qua một tập hợp dữ liệu như danh sách, tuple, hoặc chuỗi. Dưới đây là một số điểm khác nhau:

2.1. Trả về cả giá trị và chỉ số

Khi sử dụng enumerate, bạn sẽ nhận được cả giá trị của phần tử và chỉ số của phần tử trong danh sách. Điều này rất hữu ích khi bạn muốn biết vị trí (chỉ số) của một phần tử trong danh sách khi đang lặp.

Vòng lặp thông thường: Chỉ cung cấp giá trị của mỗi phần tử trong tập hợp, không cung cấp thông tin về chỉ số của phần tử đó.

2.2. Cú pháp

for index, value in enumerate(iterable):

   # Sử dụng index và value

Vòng lặp thông thường:

for value in iterable:

# Sử dụng với value

2.3. Yêu cầu thêm bộ nhớ

Thông thường enumerate có thể lấy cả chỉ số và giá trị vào một tuple mỗi khi lặp, vì vậy sẽ tốn ít bộ nhớ hơn so với vòng lặp thông thường.

Ở vòng lặp thông thường thì không có bước bổ sung nào mà chỉ lặp lại qua giá trị.

2.4. Khi nào nên sử dụng enumerate?

Bạn nên sử dụng enumerate khi cần thông tin về vị trí của mỗi phần tử trong tập hợp (ví dụ: để chỉ số hoặc theo dõi vị trí).

Vòng lặp thông thường: Khi bạn chỉ cần duyệt qua các giá trị mà không cần biết vị trí của chúng.

3. Lời Kết

Như vậy, ICANTECH đã cùng bạn tìm hiểu về enumerate trong Python cũng như cách áp dụng enumerate trong thực tế. Hi vọng bài viết đã giúp bạn có cái nhìn tổng quan hơn về enumerate.

Cảm ơn bạn đã đọc bài viết, nếu bạn đang quan tâm đến học lập trình thì hãy tham khảo ngay các khóa học lập trình dưới đây tại ICANTECH nhé

Nguồn ảnh: ICANTECH.

Share
Tags
Lập trình chung

Bài tương tự