1. Duyệt List bằng vòng lặp for trong Python
Việc duyệt qua các phần tử trong List thường được sử dụng để lấy ra từng phần tử có trong List nhằm phục vụ cho các thao tác chỉnh sửa, cập nhật, hiển thị…
Python cho phép bạn có thể duyệt các phần tử trong một List bằng cách sử dụng một vòng lặp for như sau:
# Khai bao list gom 5 phan tu listA = ["oto", "xe may", "may bay", "tau dien", "xe dap"] # Coi x la cac phan tu co trong listA for x in listA: # Hien thi gia tri x print(x)
Ngoài cách ở trên, ta cũng có thể sử dụng vòng lặp for để duyệt một List thông qua chỉ mục của mỗi phần tử có trong List như sau:
# Khai bao list gom 5 phan tu listA = ["oto", "xe may", "may bay", "tau dien", "xe dap"] # Tao vong lap i chay tu 0 den het chi muc cua listA for i in range(len(listA)): # Hien thi phan tu listA[0], listA[1], listA[2]... listA[4] print(listA[i])
Kết quả:
oto xe may may bay tau dien xe dap |
2. Duyệt List bằng vòng lặp while trong Python
Ngoài cách sử dụng vòng lặp for, bạn cũng có thể lặp qua các phần tử trong List bằng cách sử dụng một vòng lặp while
Ta cần sử dụng hàm len() để xác định độ dài của List, sau đó bắt đầu lặp từ phần tử có chỉ mục 0 đến tất cả các chỉ mục của các phần tử có trong List như sau:
# Khai bao list gom 5 phan tu listA = ["oto", "xe may", "may bay", "tau dien", "xe dap"] # Khai bao bien chi muc bat dau i = 0 # Lap khi i van nho hon do dai cua listA while i < len(listA): # Hien thi cac phan tu listA[0], listA[1], listA[2]... listA[4] print(listA[i]) # Tang i them mot don vi de chuyen den chi muc phan tu tiep theo i = i + 1
Kết quả:
oto xe may may bay tau dien xe dap |
3. Sử dụng List comprehension trong Python
Giả sử ta chỉ cần duyệt qua List hiện có và mong muốn tạo một List mới dựa trên các giá trị của List hiện có. Khi đó ta có thể sử dụng vòng lặp for kết hợp với câu điều kiện if như sau:
# Khai bao list gom 5 phan tu listA = ["oto", "xe may", "may bay", "tau dien", "xe dap"] # Khai bao listB khong co phan tu nao listB = [] # Duyet cac phan tu trong listA va gan bang x for x in listA: # Neu co phan tu co ky tu "a" trong listA if "a" in x: # Thuc hien them phan tu x co chua ky tu "a" vao listB listB.append(x) # Hien thi listB print("listB = {0}".format(listB))
Hoặc có thể sử dụng cú pháp ngắn gọn trên một dòng bên dưới để tạo ra một List mới dựa trên giá trị của các List hiện có như sau:
# Khai bao list gom 5 phan tu listA = ["oto", "xe may", "may bay", "tau dien", "xe dap"] # Khai bao listB bang cach duyet qua cac phan tu x co chua ky tu "a" trong listA listB = [ x for x in listA if "a" in x] # Hien thi listB print("listB = {0}".format(listB))
Kết quả:
listB = [‘xe may’, ‘may bay’, ‘tau dien’, ‘xe dap’] |
Sử dụng vòng lặp while cũng có thể duyệt qua một List đã có sẵn và kết hợp với câu điều kiện if để tạo ra một List mới dựa trên các phần tử của List đã có sẵn như sau:
# Khai bao list gom 5 phan tu listA = ["oto", "xe may", "may bay", "tau dien", "xe dap"] # Khai bao listB khong co phan tu nao listB = [] # Khai bao bien chi muc bat dau i = 0 # Lap khi i van nho hon do dai cua listA while i < len(listA): # Neu co phan tu co chi muc i va chua ky tu "a" trong listA if "a" in listA[i]: # Thuc hien them phan tu co chi muc i va chua ky tu "a" vao listB listB.append(listA[i]) # Tang i them mot don vi de chuyen den chi muc phan tu tiep theo i = i + 1 # Hien thi listB print("listB = {0}".format(listB))
Kết quả:
listB = [‘xe may’, ‘may bay’, ‘tau dien’, ‘xe dap’] |