Đào sâu về hàm enumerate() trong lập trình Python
Hàm Enumerate là gì ?
Trong Python, hàm enumerate()
được sử dụng để đánh số các phần tử trong một iterable (có thể là danh sách, tuple, chuỗi, hoặc bất kỳ iterable nào khác), và trả về một đối tượng enumerate, chứa cặp giá trị (index, value) cho mỗi phần tử trong iterable. Trong đó, index
là số thứ tự của phần tử trong iterable, bắt đầu từ 0, và value
là giá trị của phần tử tương ứng.
Ví dụ :
fruits = ['apple', 'banana', 'cherry']
for index, value in enumerate(fruits):
print(index, value)
Kết quả ;
0 apple
1 banana
2 cherry
Nếu bạn muốn bắt đầu đánh số từ một số khác, bạn có thể truyền một tham số thứ hai cho hàm enumerate()
, chỉ định số bắt đầu của index. Ví dụ, để bắt đầu đánh số từ 1, ta sử dụng:
fruits = ['apple', 'banana', 'cherry']
for index, value in enumerate(fruits, 1):
print(index, value)
Kết quả
1 apple
2 banana
3 cherry
Khi nào sử dụng hàm enumerate() trong python
Hàm enumerate()
trong Python được sử dụng khi bạn muốn đánh số các phần tử trong một iterable, đặc biệt là trong vòng lặp. Nó có thể giúp bạn xử lý các phần tử của iterable theo số thứ tự của chúng, để có thể thực hiện các thao tác phức tạp hơn.
Một số trường hợp cụ thể mà bạn có thể sử dụng hàm enumerate()
bao gồm:
- Lặp qua các phần tử của một iterable và đánh số chúng, ví dụ:
fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
print(index, fruit)
2. Tìm vị trí của một phần tử cụ thể trong một iterable, ví dụ:
fruits = ['apple', 'banana', 'cherry']
index_of_banana = None
for index, fruit in enumerate(fruits):
if fruit == 'banana':
index_of_banana = index
break
print(index_of_banana) # 1
3. Tạo một từ điển từ các phần tử của một iterable, với key là số thứ tự của chúng, ví dụ
fruits = ['apple', 'banana', 'cherry']
fruit_dict = {index: fruit for index, fruit in enumerate(fruits)}
print(fruit_dict) # {0: 'apple', 1: 'banana', 2: 'cherry'}
Với những trường hợp tương tự, hàm enumerate()
là một công cụ hữu ích để làm việc với iterable trong Python.