PHP
Python

Trang chủ

Các câu lệnh điều khiển luồng trong Python

Ngôn ngữ Python là một ngôn ngữ lập trình đa mục đích, nổi tiếng với cú pháp dễ đọc, dễ học và tính ứng dụng cao. Trong lĩnh vực phát triển web, Python thường được sử dụng thông qua các framework như Django và Flask để xây dựng các ứng dụng web mạnh mẽ, bảo mật và dễ mở rộng. Trong chuyên mục này, Vietnix không chỉ cung cấp kiến thức nền tảng về ngôn ngữ Python mà còn hướng dẫn chi tiết cách xây dựng các ứng dụng web thực tế, sử dụng các framework phổ biến và áp dụng các kỹ thuật tiên tiến. Vietnix cam kết liên tục cập nhật những bài viết mới nhất về các tính năng mới của Python, các thư viện hỗ trợ hữu ích và những phương pháp tốt nhất, giúp bạn khai thác tối đa sức mạnh của Python và hoàn thiện kỹ năng lập trình web của mình.
html
CSS
javascript
sql
python
php
c
c++
bootstrap
react
mysql
reactjs
vuejs
Javascript Tutorials
03/01/2025
7 phút đọc
Theo dõi Vietnix trên

Các câu lệnh điều khiển luồng trong Python

Tính logic và khả năng kiểm soát quá trình thực thi là yếu tố then chốt để xây dựng phần mềm hiệu quả. Trong Python, điều này được thực hiện thông qua cơ chế điều khiển luồng. Bài viết này Vietnix sẽ cung cấp một cái nhìn tổng quan về các cấu trúc điều khiển luồng trong Python, đặc biệt tập trung vào các câu lệnh rẽ nhánh và vòng lặp, nền tảng cho mọi chương trình phức tạp.

Điều khiển luồng (Control Flow) là gì?

Khi bạn viết một chương trình Python, các dòng code thường được thực hiện tuần tự từ trên xuống dưới. Tuy nhiên, điều này chỉ phù hợp với các tác vụ đơn giản. Nếu muốn chương trình của mình trở nên linh hoạt hơn, có khả năng đưa ra các quyết định và thực hiện các công việc khác nhau tùy thuộc vào từng điều kiện, bạn cần đến điều khiển luồng (control flow).

image 6
Các câu lệnh điều khiển luồng trong Python 8

Hiểu một cách đơn giản, điều khiển luồng là cách bạn “chỉ đạo” chương trình của mình:

  • Rẽ nhánh: Thực hiện một khối lệnh này hay một khối lệnh khác tùy thuộc vào một điều kiện nào đó.
  • Lặp lại: Thực hiện một khối lệnh nhiều lần.
  • Nhảy: Gọi một hàm để thực hiện một tác vụ cụ thể rồi quay lại nơi gọi hàm.

Python cũng giống như hầu hết các ngôn ngữ lập trình khác, cung cấp cho chúng ta các công cụ để kiểm soát luồng thực thi, giúp chúng ta viết ra các chương trình phức tạp và thông minh hơn. Nhìn chung, có hai loại câu lệnh chính giúp chúng ta điều khiển luồng: câu lệnh rẽ nhánh (decision making statements) và vòng lặp (loop statements). Chúng ta sẽ cùng nhau khám phá ở ngay phần tiếp theo đây.

Câu lệnh rẽ nhánh (Decision Making Statements)

Các câu lệnh rẽ nhánh được sử dụng trong chương trình Python để giúp chương trình quyết định nhóm chỉ thị nào trong các nhóm chỉ thị khác nhau sẽ được thực thi, dựa trên giá trị của một biểu thức Boolean nhất định.

Sơ đồ sau đây minh họa cách các câu lệnh rẽ nhánh hoạt động:

Sơ đồ Decision Making Statements
Sơ đồ Decision Making Statements

Câu lệnh if trong Python

Python cung cấp các câu lệnh if..elif..else như một phần của việc ra quyết định. Nó bao gồm ba khối khác nhau, đó là khối if, khối elif (viết tắt của else if) và khối else.

Đây là một ví dụ đơn giản sử dụng if..elif..else. Bạn có thể thử chạy đoạn code này với các giá trị marks khác nhau để kiểm tra kết quả.

marks = 80
result = ""
if marks < 30:
    result = "Failed"
elif marks > 75:
    result = "Passed with distinction"
else:
    result = "Passed"

print(result)

Điều này sẽ tạo ra kết quả sau:

Passed with distinction

Câu lệnh match trong Python

Python hỗ trợ câu lệnh match-case, cũng được sử dụng để đưa ra quyết định. Nếu một mẫu (pattern) khớp với biểu thức, code trong khối case tương ứng sẽ được thực thi.

Đây là một ví dụ đơn giản sử dụng câu lệnh match:

def checkVowel(n):
   match n:
      case 'a': return "Vowel alphabet"
      case 'e': return "Vowel alphabet"
      case 'i': return "Vowel alphabet"
      case 'o': return "Vowel alphabet"
      case 'u': return "Vowel alphabet"
      case _: return "Simple alphabet"
print (checkVowel('a'))
print (checkVowel('m'))
print (checkVowel('o'))

CHương trình trên sẽ in ra kết quả:

Vowel alphabet
Simple alphabet
Vowel alphabet

Vòng lặp hoặc câu lệnh lặp

Phần lớn các quy trình đều yêu cầu một nhóm các lệnh được thực thi lặp đi lặp lại. Trong thuật ngữ lập trình, đây được gọi là một vòng lặp. Thay vì tiếp tục bước tiếp theo, nếu luồng điều khiển được chuyển hướng về một bước trước đó, thì đó tạo thành một vòng lặp.

Sơ đồ sau đây minh họa cách hoạt động của vòng lặp:

Sơ đồ hoạt động của vòng lặp trong Python
Sơ đồ hoạt động của vòng lặp trong Python

Nếu luồng điều khiển quay lại vô điều kiện, điều này tạo thành một vòng lặp vô hạn, một điều không mong muốn vì phần code còn lại sẽ không bao giờ được thực thi.

Trong một vòng lặp có điều kiện, việc lặp đi lặp lại một khối lệnh sẽ tiếp diễn cho đến khi một điều kiện cụ thể được đáp ứng. Python hỗ trợ nhiều loại vòng lặp như vòng lặp for, vòng lặp while, mà mình sẽ tìm hiểu ở các chương tiếp theo trong series học lập trình Python này.

Vòng lặp for

Vòng lặp for sẽ duyệt qua từng phần tử của một chuỗi, chẳng hạn như một danh sách (list), bộ (tuple) hoặc chuỗi (string).

Dưới đây là một ví dụ sử dụng vòng lặp for để duyệt qua một mảng trong Python:

words = ["one", "two", "three"]
for x in words:
  print(x)

Chương trình trên sẽ in ra kết quả:

one
two
three

Vòng lặp while

Vòng lặp while sẽ thực thi lặp đi lặp lại một khối lệnh chừng nào biểu thức điều kiện boolean vẫn còn đúng.

Dưới đây là ví dụ sử dụng vòng lặp while để in ra 5 số đầu tiên trong Python:

i = 1
while i < 6:
  print(i)
  i += 1

Chương trình trên sẽ in ra kết quả:

1

2

3

4

5

 

Các lệnh nhảy (jump) trong Python

Các lệnh nhảy được sử dụng để chuyển đến một vị trí cụ thể trong chương trình, ngắt luồng thực thi hiện tại. Trong Python, có hai lệnh nhảy chính là breakcontinue.

Lệnh break

Lệnh break sẽ kết thúc vòng lặp hiện tại và chương trình tiếp tục thực thi ở câu lệnh kế tiếp sau vòng lặp đó.

Đoạn code sau đây minh họa cách sử dụng lệnh break:

x = 0

while x < 10:
    print("x:", x)
    if x == 5:
        print("Breaking...")
        break
    x += 1

print("End")

Kết quả đầu ra sẽ như sau:

x: 0
x: 1
x: 2
x: 3
x: 4
x: 5
Breaking…
End

Bạn có thể thấy rằng khi x bằng 5, lệnh break được thực thi, vòng lặp while dừng lại và chương trình tiếp tục với câu lệnh print(“End”).

Lệnh continue

Lệnh continue sẽ bỏ qua phần còn lại của khối lệnh bên trong vòng lặp và chuyển quyền điều khiển trở lại đầu vòng lặp hiện tại để bắt đầu lần lặp tiếp theo.

Ví dụ sau đây minh họa việc sử dụng lệnh continue:

for letter in "Python":
    # continue when letter is 'h'
    if letter == "h":
        continue
    print("Current Letter :", letter)

Kết quả đầu ra sẽ là:

Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : o
Current Letter : n

Lời kết

Qua bài viết, bạn đã nắm bắt được các câu lệnh điều khiển luồng thiết yếu của Python. Hy vọng kiến thức này sẽ hỗ trợ bạn trong việc xây dựng và kiểm soát logic của chương trình một cách tốt nhất, giúp code trở nên mạch lạc và dễ bảo trì hơn.

Cao Lê Viết Tiến

PHP Leader
tại
Vietnix

Kết nối với mình qua

Icon Quote
Icon Quote

Học lập trình online cùng vietnix

Học lập trình online cùng Vietnix

PHPXem thêmThu gọn