Lặp qua một danh sách là nhiệm vụ mà bạn thường xuyên phải làm khi lập trình trên các ngôn ngữ nói chung và Python nói riêng. Do đó, hãy đảm bảo rằng bạn đang thực hiện nó theo cách tốt nhất có thể.
Python là một trong những ngôn ngữ lập trình có tốc độ phát triển nhanh nhất. Các lập trình viên sử dụng nó cho machine learning, khoa học dữ liệu và một loạt lĩnh vực khác. Trước khi bắt đầu học các khía cạnh nâng cao hơn của ngôn ngữ này, bạn nên nắm vững một trong những cấu trúc dữ liệu phổ biến nhất đó chính là danh sách.
Danh sách trong Python là mảng, rất quen thuộc với cả những ngôn ngữ lập trình khác như C và C++. Bạn có thể thay đổi kích thước của danh sách và để thuận tiện Python có sẵn một số phương thức khác nhau dành cho danh sách. Bạn có thể lưu trữ nhiều kiểu dữ liệu trong một danh sách, chẳng hạn như chuỗi, đối tượng và thậm chí là danh sách khác.
Tại sao bạn cần biết các kỹ thuật lặp khác nhau?
Có thể bạn sẽ đặt ra câu hỏi rằng chỉ cần một vòng lặp for đơn giản là đã có thể duyệt qua một danh sách trên Python rồi, việc gì cần phải biết các cách khác làm gì?
Thường thì việc sử dụng các phương pháp rút gọn, chẳng hạn như list comprehension hoặc hàm lambda sẽ giúp code của bạn ngắn gọn hơn và ít lộn xộn hơn. Ngoài ra, với một danh sách phức tạp có nhiều phần tử thì thường bạn sẽ phải thử để tìm ra cách duyệt hiệu quả nhất.
Quan trọng hơn, khi bạn đi xin việc ở vị trí lập trình viên, nhà tuyển dụng có thể hỏi những câu phức tạp về duyệt danh sách. Do đó, nếu bạn biết các cách duyệt danh sách khác nhau, bạn sẽ có thể trả lời những câu hỏi đó dễ dàng hơn.
Cách 1: Duyệt bằng cách sử dụng vòng lặp For và phương thức Range
Giống như các ngôn ngữ lập trình khác, sử dụng vòng lặp for là phương pháp phổ biến nhất để duyệt qua danh sách trong Python.
arr = [10, 20, 30, 40]
for val in arr:
print('value', val)Ngoài ra, bạn cũng có thể sử dụng phương thức range() để có nhiều quyền kiểm soát hơn với vòng lặp for của mình. Phương thức range() nhận ba đối số:
- start: Biểu thị chỉ số bắt đầu của quá trình duyệt vòng lặp for.
- stop: Cho chương trình biết chỉ mục cuối cùng/dừng cho quá trình duyệt vòng lặp for. Người ta thường dùng độ dài của danh sách (số phần tử) làm chỉ mục dừng.
- step: Đối số kích thước step là tùy chọn. Nếu được cung cấp, nó sẽ đặt số lượng vòng lặp for tăng bộ đếm đang chạy của nó mỗi lần. Theo mặc định, kích thước step là 1.
Duyệt qua danh sách Python bằng phương thức range():
arr = [10, 20, 30, 40, 50, 60]
for key in range(0, len(arr), 2):
print('num', key)
Ví dụ trên chạy vòng lặp for từ chỉ số 0 cho đến khi hết độ dài của mảng và tăng bộ đếm vòng lặp lên 2.
Cách 2: Duyệt rút gọn bằng List comprehension
Một trong những tính năng trực quan nhất của Python chính là list comprehension. Nó cho phép bạn viết các giải pháp đơn giản, một dòng cho nhiều vấn đề khác nhau.
Ví dụ: Để tính bình phương của 10 số đầu tiên, bạn chỉ cần viết dòng code:
sq = [x ** 2 for x in range(10)]Cho một danh sách các số, bạn có thể in chúng ra bằng list comprehension như sau:
arr = [1, 3, 5, 7, 9]
[print(val) for val in arr]Một khi đã thông thạo, list comprehension là một công cụ cực kỳ mạnh mẽ và có thể giúp việc viết code trở nên đơn giản hơn rất nhiều.
Cách 3: Sử dụng hàm lambda nội dòng
Thông thường, chúng ta khai báo các hàm trong Python bằng cách sử dụng từ khóa def và phải cung cấp phần thân và tiêu đều của hàm. Các hàm lambda là một tính năng mạnh mẽ khác của Python với khả năng giúp cho việc viết code trở nên đơn giản, ngắn gọn và dễ dàng hơn. Chúng không có tên và chỉ có thể chứa một biểu thức duy nhất. Tuy nhiên, bạn có thể đưa bất kỳ số lượng tham số nào vào một hàm lambda.
Khi kết hợp với phương thức map(), hàm lambda có thể hoạt động hiệu quả như một vòng lặp for. Để in danh sách các số bằng cách sử dụng kết hợp các hàm lambda và map() bạn viết code như sau:
arr = [1, 3, 4, 5, 6, 7, 8]
myFun = list(map(lambda z:z, arr))
print(myFun)Vòng lặp rất cần thiết trong mọi ngôn ngữ lập trình và Python cũng không ngoại lệ. Hầu hết các chương trình bạn viết đều sẽ có một hoặc nhiều vòng lặp, không ở chỗ này thì ở chỗ khác, không ở dạng này thì ở dạng khác.
Quản Trị Mạng hy vọng rằng bài viết này sẽ có ích đối với bạn!
 Học IT
 Học IT  
  
  
  
  
  
  
  
  
  
 
 Học Python
 Học Python 









 Công nghệ
 Công nghệ  Nền tảng Web
 Nền tảng Web  Microsoft Word 2013
 Microsoft Word 2013  Microsoft Word 2007
 Microsoft Word 2007  Microsoft Excel 2019
 Microsoft Excel 2019  Microsoft Excel 2016
 Microsoft Excel 2016  Microsoft PowerPoint 2019
 Microsoft PowerPoint 2019  Microsoft PowerPoint 2016
 Microsoft PowerPoint 2016  Google Sheets
 Google Sheets  HTML
 HTML  Lập trình Scratch
 Lập trình Scratch  CSS và CSS3
 CSS và CSS3  Lập trình C
 Lập trình C  Lập trình C++
 Lập trình C++  Lập trình C#
 Lập trình C#  Học PHP
 Học PHP  Bootstrap
 Bootstrap  SQL Server
 SQL Server  JavaScript
 JavaScript  Unix/Linux
 Unix/Linux  Khoa học vui
 Khoa học vui  Khám phá khoa học
 Khám phá khoa học  Bí ẩn - Chuyện lạ
 Bí ẩn - Chuyện lạ  Sức khỏe
 Sức khỏe  Vũ trụ
 Vũ trụ  Khám phá thiên nhiên
 Khám phá thiên nhiên  Bảo vệ Môi trường
 Bảo vệ Môi trường  Phát minh Khoa học
 Phát minh Khoa học  Tết 2025
 Tết 2025  Video
 Video  Hướng dẫn
 Hướng dẫn  Công nghệ
 Công nghệ  Khoa học
 Khoa học  Ô tô, Xe máy
 Ô tô, Xe máy  Tổng hợp
 Tổng hợp