icantech
Lập trình Python
5161
25/10/2023

Tìm hiểu về vòng lặp for trong Python

Bên cạnh những khái niệm như biến số, toán tử, câu lệnh điều kiện thì vòng lặp cũng là một trong những khái niệm cơ bản nhất trong lập trình. Trong lập trình Python, vòng lặp được chia thành 2 loại: vòng lặp for và vòng lặp while. Trong bài viết này, hãy cùng ICANTECH tìm hiểu về vòng lặp for trong Python nhé!

1. Khái niệm vòng lặp for trong Python

“For trong Python là gì?” là câu hỏi mà rất nhiều người thắc mắc. Cũng giống while, vòng lặp for Python được sử dụng để lặp lại một hay nhiều câu lệnh, đoạn lệnh. Ngược lại, vòng lặp while được sử dụng khi chưa biết trước số lần lặp thì for là câu lệnh lặp không biết trước số lần lặp.

1.1. Cú pháp cơ bản của vòng lặp for

for i in S:

statements

Trong đó:

  • for: từ khóa vòng lặp
  • i là biến chạy vòng lặp
  • S có thể là một list, String, khoảng giá trị, …
  • statements: Các câu lệnh được thụt lề và lặp lại 

1.2. Sơ đồ hoạt động của vòng lặp for

quy-trinh-vong-lap-for

Quy trình thực hiện vòng lặp for

  • Bước 1: Khởi tạo giá trị biến lặp, chỉ thực hiện 1 lần duy nhất
  • Bước 2: Kiểm tra điều kiện lặp, nếu điều kiện sai => Chuyển sang B5
  • Bước 3: Thực hiện câu lệnh lặp
  • Bước 4: Cập nhật giá trị biến lặp => Quay lại B2
  • Bước 5: Kết thúc vòng lặp

1.3. Ví dụ cơ vòng lặp for cơ bản

for i in range(6):

print(i)

Kết quả:

1

2

3

4

5

2. Một số thao tác thường sử dụng trong vòng lặp for

Ngoài việc lặp các hành động đơn thuần theo điều kiện, chúng ta có thể kết hợp câu lệnh lặp for với một số câu lệnh, điều kiện đặc biệt để xử lí các yêu cầu phức tạp hơn.

2.1. Vòng lặp for với break

Rất nhiều người đặt ra câu hỏi “Vòng lặp for kết thúc khi nào?”. Ngoài việc dừng khi điều kiện trả về giá trị false thì có cách nào khác để kết thúc vòng lặp for hay không?

vong-lap-for-ket-thuc-khi-nao

Một cách đơn giản nhất để dừng vòng lặp giữa chừng đó là sử dụng câu lệnh break. Khi gặp câu lệnh break thì vòng lặp có thể dừng lại ngay cả khi điều kiện là đúng.

Ví dụ:

for i in range(10):

if i == 5:

break

print(i)

Kết quả:

0

1

2

3

4

Ở vòng lặp trên, kiểm tra nếu i=5 thì sẽ thực hiện câu lệnh break thoát khỏi vòng lặp mặc dù chưa lặp hết đến 9.

2.2. Vòng lặp for với continue

Khác với việc dừng và thoát hoàn toàn khỏi vòng lặp, thì việc bỏ quả một lần lặp được thể hiện khá thường xuyên trong quá trình lặp. Để thực hiện điều này, chúng ta sử dụng câu lệnh continue trong vòng lặp.

Ví dụ:

for i in range(10):

if i == 5:

continue

print(i)

Kết quả:

0

1

2

3

4

6

7

8

9

Ở vòng lặp trên, Kiểm tra nếu i=5 thì sẽ thực hiện câu lệnh continue bỏ qua lần lặp hiện tại và sang lần lặp tiếp theo.

2.3. Vòng lặp for với else

Vòng lặp for else được sử dụng để xử lí các hành động khi kết thúc vòng lặp.

Vòng lặp for sẽ kết thúc khi điều kiện trả về False. Nhưng nếu bạn vẫn muốn xử lí một hành động nào đó khi điều kiện sai thì có thể sử dụng kết hợp với else.

Ví dụ: 

for i in range(10):

if i == 5:

continue

print(i)

else:

print("End")

Kết quả:

0

1

2

3

4

6

7

8

9

End

Nếu như sử dụng vòng lặp for với câu lệnh break thì các câu lệnh trong else sẽ không được thực hiện.

2.4. Vòng lặp lồng nhau

Tương tự vòng lặp while, chúng ta cũng có thể đặt lồng các vòng lặp for vào nhau.

Ví dụ 1:

n = int(input("Nhap chieu cao n="))

for i in range(n):

for j in range(n):

if j == 0 or i == j or j == n-1:

print("*", end=" ")

else:

print(" ", end=" ")

print()

Kết quả:

Nhap chieu cao n=8

*             * 

* *           * 

*   *         * 

*     *       * 

*       *     * 

*         *   * 

*           * * 

*             * 

Ví dụ 2:

n = int(input("Nhap chieu cao n="))

for i in range(n):

for j in range(n):

if j == 0 or i == j or j == n-1:

print("*", end=" ")

else:

print("*", end=" ")

print()

Kết quả:

Nhap chieu cao n=5

* * * * * 

* * * * * 

* * * * * 

* * * * * 

* * * * * 

2.5. Vòng lặp for với danh sách

Để duyệt các phần tử trong một danh sách, một tuple, một dictionary ta thường sử dụng vòng lặp for.

Ví dụ:

l1 = [-1, 'hi', 5, 3, '25', 19, 'abc', 50]

for i in l1:

print(i)

Kết quả:

-1

hi

5

3

25

19

abc

50

2.6. Các thao tác khác

Ngoài các thao tác trên, chúng ta có thể kết hợp vòng lặp for với các cấu trúc điều khiển khác trong lập trình Python như kết hợp với vòng lặp while, cấu trúc rẽ nhánh… Việc kết hợp này giúp phương trình có thể xử lí nhiều tác vụ phức tạp mà một vòng lặp while đơn giản không thể xử lí được.

3. Một số bài tập vòng lặp for trong Python

Một số bài tập sử dụng vòng lặp for để luyện tập lập trình với vòng lặp for:

  • Bài 1. Tính tổng n số chẵn đầu tiên
  • Bài 2. Tính tổng n số lẻ đầu tiên
  • Bài 3. Tính tích n số chẵn đầu tiên
  • Bài 4. Tính tích n số lẻ đầu tiên
  • Bài 5. Tính n!

4. Lời Kết

Vòng lặp for trong Python chính là một công cụ đơn giản mà mạnh mẽ hỗ trợ bạn xử lí các vấn đề lặp, tự động công việc từ đơn giản đến phức tạp. Bài viết đã cung cấp rất chi tiết về các khía cạnh của vòng lặp for trong Python. Hãy tìm hiểu thật kĩ và áp dụng những kiến thức trên vào chương trình của bạn nhé! Chúc các bạn thành công!

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 online tại ICANTECH nhé

Nguồn ảnh: ICANTECH.

Share
Tags
Lập trình Python

Bài tương tự