Python - Loop Lists

Loop Through List Items

Lặp qua các mục trong danh sách trong Python đề cập đến việc lặp qua từng phần tử trong danh sách. Chúng ta thực hiện điều này để thực hiện các thao tác mong muốn trên mỗi mục. Các thao tác này bao gồm sửa đổi danh sách, các phép toán điều kiện, xử lý chuỗi, phân tích dữ liệu, v.v.

Python cung cấp nhiều phương pháp để lặp qua list mục, với phương pháp phổ biến nhất là for loop . Chúng ta cũng có thể sử dụng while loop để lặp qua các mục trong danh sách, mặc dù nó yêu cầu xử lý thêm biến điều khiển vòng lặp một cách rõ ràng tức là một chỉ số.

Loop Through List Items with For Loop

Vòng lặp for trong Python được sử dụng để lặp qua một chuỗi (như danh sách, tuple, từ điển, chuỗi hoặc khoảng) hoặc bất kỳ đối tượng có thể lặp nào khác. Nó cho phép bạn thực hiện một khối mã nhiều lần cho mỗi mục trong chuỗi.

Trong một vòng lặp for, bạn có thể truy cập từng mục trong một chuỗi bằng cách sử dụng một biến, cho phép bạn thực hiện các phép toán hoặc logic dựa trên giá trị của mục đó. Chúng ta có thể lặp qua các mục trong danh sách bằng cách sử dụng vòng lặp for để lặp qua từng mục trong danh sách.

Syntax

Dưới đây là cú pháp cơ bản để lặp qua các mục trong một danh sách bằng cách sử dụng vòng lặp for trong Python −

for item in list:
   # Code block to execute

Example

Trong ví dụ sau, chúng ta đang sử dụng vòng lặp for để lặp qua từng phần tử trong danh sách "lst" và lấy từng phần tử theo sau là một khoảng trắng trên cùng một dòng −

lst = [25, 12, 10, -21, 10, 100]
for num in lst:
   print (num, end = ' ')

Output

Dưới đây là đầu ra của đoạn mã trên −

25 12 10 -21 10 100

Loop Through List Items with While Loop

Vòng lặp while trong Python được sử dụng để thực thi lặp đi lặp lại một khối mã miễn là điều kiện được chỉ định đánh giá là "True".

Chúng ta có thể lặp qua các mục trong danh sách bằng cách sử dụng vòng lặp while bằng cách khởi tạo một biến chỉ mục, sau đó lặp qua danh sách bằng cách sử dụng biến chỉ mục và tăng nó lên cho đến khi đạt đến cuối danh sách.

An index variable is used within a loop to keep track of the current position or index in a sequence, such as a list or array. It is generally initialized before the loop and updated within the loop to iterate over the sequence.

Syntax

Dưới đây là cú pháp cơ bản để lặp qua các mục trong một danh sách bằng cách sử dụng vòng lặp while trong Python −

while condition:
   # Code block to execute

Example

Trong ví dụ dưới đây, chúng ta lặp qua từng mục trong danh sách "my_list" bằng cách sử dụng vòng lặp while. Chúng ta sử dụng một biến chỉ số "index" để truy cập từng mục một cách tuần tự, tăng nó lên sau mỗi lần lặp để chuyển sang mục tiếp theo.

my_list = [1, 2, 3, 4, 5]
index = 0

while index < len(my_list):
   print(my_list[index])
   index += 1

Output

Đầu ra của đoạn mã trên như sau −

1
2
3
4
5

Loop Through List Items with Index

Một chỉ mục là một giá trị số đại diện cho vị trí của một phần tử trong một chuỗi, chẳng hạn như danh sách, bắt đầu từ 0 cho phần tử đầu tiên.

Chúng ta có thể lặp qua các mục trong danh sách bằng cách sử dụng chỉ số bằng cách lặp qua một khoảng các chỉ số tương ứng với độ dài của danh sách và truy cập từng phần tử bằng chỉ số trong vòng lặp.

Example

Ví dụ này khởi tạo một danh sách "lst" với các số nguyên và tạo một khoảng chỉ số tương ứng với độ dài của danh sách. Sau đó, nó lặp qua từng chỉ số trong khoảng và in giá trị tại chỉ số đó trong danh sách "lst".

lst = [25, 12, 10, -21, 10, 100]
indices = range(len(lst))
for i in indices:
   print ("lst[{}]: ".format(i), lst[i])

Output

Chúng ta nhận được đầu ra như hình dưới đây −

lst[0]: 25
lst[1]: 12
lst[2]: 10
lst[3]: -21
lst[4]: 10
lst[5]: 100

Iterate using List Comprehension

Một comprehension danh sách trong Python là một cách ngắn gọn để tạo ra các danh sách bằng cách áp dụng một biểu thức cho mỗi phần tử của một iterable. Các biểu thức này có thể là các phép toán số học, các cuộc gọi hàm, các biểu thức điều kiện, v.v.

Chúng ta có thể lặp lại bằng cách sử dụng list comprehension bằng cách chỉ định biểu thức và đối tượng có thể lặp (như danh sách, tuple, từ điển, chuỗi hoặc phạm vi). Cú pháp như sau −

[expression for item in iterable]

Điều này áp dụng biểu thức cho từng mục trong iterable và tạo ra một danh sách các kết quả.

Example

Trong ví dụ này, chúng ta sử dụng list comprehension để lặp qua từng số trong một danh sách các số, bình phương từng số và lưu kết quả bình phương vào danh sách mới "squared_numbers".

numbers = [1, 2, 3, 4, 5]
squared_numbers = [num ** 2 for num in numbers]
print (squared_numbers)

Output

Chúng ta nhận được đầu ra như hình dưới đây −

[1, 4, 9, 16, 25]

Iterate using the enumerate() Function

Hàm enumerate() trong Python được sử dụng để lặp qua một đối tượng có thể lặp lại (iterable) đồng thời cung cấp chỉ số của mỗi phần tử.

Chúng ta có thể lặp qua các phần tử bằng cách sử dụng hàm enumerate() bằng cách áp dụng nó cho đối tượng có thể lặp. Cú pháp như sau −

for index, item in enumerate(iterable):

Điều này cung cấp cả chỉ số và phần tử của mỗi phần tử trong iterable trong quá trình lặp.

Example

Trong ví dụ sau, chúng ta đang sử dụng hàm enumerate() để lặp qua một danh sách "fruits" và lấy từng loại trái cây cùng với chỉ số tương ứng của nó −

fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
   print(index, fruit)

Output

Chúng ta nhận được đầu ra như hình dưới đây −

0 apple
1 banana
2 cherry