Python - Quản lý Luồng

Xin chào, các chuyên gia Python tương lai! Hôm nay, chúng ta sẽ bơi lội vào thế giới thú vị của việc quản lý luồng trong Python. Hãy tưởng tượng việc quản lý luồng như các đèn giao thông trong lập trình - nó hướng dẫn luồng của mã của bạn, nói cho nó biết khi nào đi, dừng lại hoặc làm một chuyến dạo. Hãy bắt đầu nào!

Python - Control Flow

Câu lệnh Quyết định

Tưởng tượng bạn đang ở một cửa hàng bán kem. Bạn phải quyết định: sô-cô-la hay vani? Đây chính xác là điều gì các câu lệnh quyết định làm trong Python - chúng giúp chương trình của bạn đưa ra lựa chọn.

Câu lệnh 'if'

Câu lệnh 'if' là dạng đơn giản nhất của việc quyết định. Đây là cách nó hoạt động:

ice_cream_flavor = "chocolate"

if ice_cream_flavor == "chocolate":
print("Ngon! Sô-cô-la là món yêu thích của tôi!")

Trong ví dụ này, nếu ice_cream_flavor là "chocolate", nó sẽ in ra thông điệp. Nếu không, không có gì xảy ra.

Câu lệnh 'if-else'

Nhưng điều gì nếu chúng ta muốn làm điều gì đó khi điều kiện không đúng? Đó là nơi 'else' xuất hiện:

age = 15

if age >= 18:
print("Bạn có thể bầu cử!")
else:
print("Xin lỗi, bạn quá nhỏ để bầu cử.")

Ở đây, nếu tuổi là 18 hoặc còn lớn hơn, nó sẽ in ra "Bạn có thể bầu cử!". Nếu không, nó sẽ in ra thông điệp khác.

Câu lệnh 'if-elif-else'

Đôi khi, chúng ta cần kiểm tra nhiều điều kiện. Đó là nơi 'elif' (viết tắt của 'else if') rất hữu ích:

score = 85

if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
else:
print("Cần cải thiện")

Mã này kiểm tra điểm số và in ra hạng tương ứng.

Câu lệnh Lặp hoặc Lặp lại

Câu lệnh lặp như một vòng đuổi cười cho mã của bạn. Chúng cho phép bạn lặp lại hành động mà không cần viết lại cùng một đoạn mã.

Câu lệnh 'for'

Câu lệnh 'for' rất tốt khi bạn biết số lần bạn muốn lặp lại điều gì đó:

fruits = ["apple", "banana", "cherry"]

for fruit in fruits:
print(f"Tôi yêu {fruit}!")

Vòng lặp này sẽ in ra "Tôi yêu [fruit]!" cho mỗi loại trái cây trong danh sách.

Câu lệnh 'while'

Câu lệnh 'while' tiếp tục diễn ra trong khi một điều kiện là đúng:

count = 0

while count < 5:
print(f"Số bước là {count}")
count += 1

Điều này sẽ in ra số từ 0 đến 4.

Câu lệnh Nhảy

Câu lệnh nhảy như những hầm bí trong một trò chơi điện tử - chúng cho phép bạn bỏ qua một số phần của mã của bạn hoặc thoát khỏi vòng lặp sớm.

Câu lệnh 'break'

'break' cho phép bạn thoát khỏi vòng lặp ngay lập tức:

for i in range(10):
if i == 5:
print("Tìm thấy 5! Thoát khỏi vòng lặp.")
break
print(i)

Điều này sẽ in ra các số từ 0 đến 4, sau đó thoát khi tìm thấy 5.

Câu lệnh 'continue'

'continue' bỏ qua phần còn lại của lần lặp hiện tại và chuyển sang lần lặp tiếp theo:

for i in range(5):
if i == 2:
print("Bỏ qua 2")
continue
print(i)

Điều này sẽ in ra tất cả các số từ 0 đến 4, ngoại trừ 2.

Câu lệnh 'pass'

'pass' giống như một dấu giữ chỗ. Nó không làm gì, nhưng rất hữu ích khi bạn cần các khối mã trống:

for i in range(5):
if i == 2:
pass  # TODO: Thêm xử lý đặc biệt cho 2
else:
print(i)

Điều này sẽ in ra tất cả các số ngoại trừ 2, nơi nó không làm gì (cho tới nay).

Kết Hợp Tất Cả

Bây giờ, hãy kết hợp các khái niệm này vào một trò chơi vui nhỏ:

import random

secret_number = random.randint(1, 10)
attempts = 0

while True:
guess = int(input("Đoán số (1-10): "))
attempts += 1

if guess < secret_number:
print("Quá thấp!")
elif guess > secret_number:
print("Quá cao!")
else:
print(f"Đoán đúng trong {attempts} lần!")
break

if attempts == 3:
print(f"Xin lỗi, bạn đã hết lượt đoán. Số đó là {secret_number}.")
break

Trò chơi này sử dụng một vòng lặp while, các câu lệnh if-elif-else và câu lệnh break để tạo ra một trò chơi đoán số. Đó là một ví dụ tuyệt vời về cách việc quản lý luồng có thể tạo ra các chương trình tương tác!

Tóm tắt

Dưới đây là bảng tóm tắt nhanh về các câu lệnh quản lý luồng mà chúng ta đã nói đến:

Câu lệnh Mục đích
if Đưa ra quyết định dựa trên một điều kiện
if-else Chọn giữa hai tùy chọn
if-elif-else Chọn giữa nhiều tùy chọn
for Lặp lại mã một số lần cụ thể
while Lặp lại mã khi một điều kiện là đúng
break Thoát khỏi vòng sớm
continue Skip đến lần lặp tiếp theo
pass Không làm gì (dấu giữ chỗ)

Nhớ rằng, việc nắm vững việc quản lý luồng như học cách đứng đầu một orkestra - nó mang lại cho bạn quyền lực để tạo ra các chương trình phức tạp, đẹp từ các hướng dẫn đơn giản. Hãy tiếp tục tập luyện, và sớm bạn sẽ viết những symphony Python!

Credits: Image by storyset