Cấu trúc điều kiện và vòng lặp trong ngôn ngữ Python

1. Giới thiệu

Cấu trúc điều kiện và vòng lặp là những lệnh rất phổ biến khi lập trình không chỉ trong ngôn ngữ Python mà còn trong tất cả các ngôn ngữ lập trình.
Khi ta muốn thực hiện một khối lệnh nào đó trong Python chỉ khi một điều kiện nào đó được thỏa mãn, cấu trúc điều kiện là thứ mà ta cần dùng trong trường hợp này. Còn khi ta muốn thực hiện một khối lệnh nào đó nhiều lần, hoặc với từng phần tử trong một đối tượng mảng, ta sẽ sử dụng tới cấu trúc vòng lặp.

2. Cấu trúc điều kiện if, if…else, if…elif…else

2.1. Cấu trúc if

if [điều kiện]:
    [khối lệnh]

image

Ví dụ 1

Ta sẽ gán biến ” num ” cho 1 số ít, nếu số đó dương ta sẽ in ra ” Đây là số dương ”

Như đã thấy chỉ có “Lệnh if 1: Đây là số dương” được in ra do lệnh if 1 thỏa điều kiện là “num1 > 0” còn điều kiện “num2 > 0” không được thỏa do đó không in ra dòng “Lệnh if 2: Đây là số dương”.
Có thể thấy dòng print không thụt lề không nằm trong khối lệnh của cấu trúc điều kiện nên không cần phải thỏa điều kiện vẫn được in.

2.2 Cấu trúc if … else

if [điều kiện]:
    [khối lệnh 1]
else:
    [khối lệnh 2]

image

Ví dụ 2

Tương tự ví dụ 1 nhưng sẽ có in ra dòng không phải số dương nếu không thỏa điều kiện kèm theo số dương

Có thể thấy, ở lệnh if 1, dòng lệnh số dương được in ra do thỏa điều kiện kèm theo if 1 nhưng ở lệnh if 2 dòng lệnh không phải số dương được in ra do không thỏa điều kiện kèm theo if 2 .

2.3. Cấu trúc if …elif … else

if [điều kiện 1]:
    [khối lệnh 1]
elif [điều kiện 2]:
    [khối lệnh 2]

else:
    [khối lệnh e]

image

Ví dụ 3

Ở đây tất cả chúng ta sử dụng biến num là một giá trị do người dùng nhập vào ( sử dụng lệnh ” input ” ), nếu num nhỏ hơn 0 thì sẽ in ra ” Số âm “, nếu không nhỏ hơn 0 thì chương trình sẽ xét tiếp xem nó có bằng 0 hay không, nếu bằng 0 thì sẽ in ra ” Số 0 “, và nếu khi xét cả 2 điều kiện kèm theo trên không thỏa thì sẽ in ra ” Số dương ” .
Như vậy là tất cả chúng ta đã khám phá cơ bản về toàn bộ những cấu trúc điều kiện kèm theo trong Python. Ở phân tiếp theo ta sẽ khám phá về cấu trúc vòng lặp trong Python .

 

3. Cấu trúc vòng lặp

Trong lập trình, vòng lặp là một trong những cấu trúc thường gặp nhất bên cạnh cấu trúc điều kiện đã đề cập ở trên. Người ta sử dụng vòng lặp để thực hiện lặp lại một khối lệnh nào đó.
Các cấu trúc vòng lặp trong Python gồm 2 loại: vòng lặp với số lần xác định (for) và vòng lặp với số lần không xác định (while)

3.1. Vòng lặp với số lần xác định (for)

for [biến chạy] in range(start:stop):
    [khối lệnh]

hoặc

for [biến chạy] in [iterable]:
    [khối lệnh]

Ví dụ 4

Như ví dụ trên, biến chạy i chạy từ 0 đến 4 ( theo số đếm của Python thì mở màn từ 0 ). Với mỗi lần lặp giá trị i tăng lên 1 đơn vị chức năng lần lượt từ 0 đến 4 và 2 câu lệnh trên được in ra trong mỗi lần lặp .
Một ví dụ khác về những sử dùng vòng lặp for để lặp trên một iterable ( iterable thường là một loại tài liệu trong Python như list, tuple, dictionary … ) .

Ví dụ 5

Trên đây là một ví dụ về việc lặp qua một list chứa các kiểu dữ liệu là string mô tả các loại trái cây.
Khi biến trai_cay lặp qua list danh_sach_trai_cay, giá trị của biến trai_cay thay đổi thành từng phần tử trong list đó và in ra câu “Đây là trái” + [trai_cay] trong mỗi lần lặp

3.2. Vòng lặp với số lần không xác định (while)

while [điều kiện]:
    [khối lệnh]

Ví dụ 6

Trong ví dụ trên, ta set biến count ở giá trị khởi đầu là 0 và thực thi những dòng lệnh print khi biến count vẫn còn bé hơn 5. Khối lệnh sẽ in ra những câu như trên và sau đó đổi khác biến count tăng lên 1 đơn vị chức năng, sau đó khối lệnh sẽ được xem xét liên tục điều kiện kèm theo, nếu thỏa thì sẽ liên tục lặp lại như vậy. Cho đến khi biến count có giá trị là 5 thì khối lệnh trong vòng lặp while không còn được triển khai. Khi này, chương trình sẽ nhảy xuống triển khai 2 dòng lệnh in phía dưới ( nằm ngoài vòng lặp while )

4. Một ví dụ kết hợp cấu trúc điều kiện và vòng lặp cùng với một list dữ liệu

Ta sẽ thực thi một ví dụ về việc tìm số nhỏ nhất trong một dãy số cho trước :

Ở ví dụ trên, ta cho trước một dãy số num_list, sau đó ta set biến current_min là một giá trị rất lớn (để khi gặp số đầu tiên trong dãy số, số đó sẽ biến thành current_min).
Sau đó, sử dụng vòng lặp for để lặp biến num qua tất cả các giá trị trong num_list. Ở mỗi vòng lặp, câu lệnh if sẽ kiểm tra xem biến chạy num có nhỏ hơn giá trị current_min hay không (ở số đầu tiên chắc chắn nhỏ hơn vì số current_num được ta đặt rất lớn lúc đầu). Nếu điều kiện biến chạy num nhỏ hơn biến current_min thì biến current_min sẽ được gán lại bằng với biến num lúc đó.
Ví dụ ở vòng lặp đầu tiên, biến num là 3 sẽ nhỏ hơn biến current_num là 999999999999999, do đó current_sau vòng lặp đầu sẽ là 3. Ở vòng lặp tiếp theo biến num lúc là này là 9 sẽ không nhỏ hơn biến current_num là 3, do đó không thỏa điều kiện và khối lệnh gán biến sẽ không được thực hiện, current_num lúc này vẫn tiếp tục là 3. Và vòng lặp và điều kiện cứ được tiếp diễn cho tới khi biến num được lặp qua hết list num_list.
Biến current_min lúc này sẽ là số nhỏ nhất trong dãy số và được gán cho biến final_min. Câu lệnh cuối cùng in ra giá trị của final_min.

5. Kết luận

Với bài viết trên đây, kỳ vọng những bạn sẽ hoàn toàn có thể làm quen được với cấu trúc điều kiện kèm theo và vòng lặp trong ngôn từ Python – hai cấu trúc được sử dụng liên tục không chỉ trong Python mà còn ở rất nhiều những ngôn từ lập trình khác. Các bạn hoàn toàn có thể tự tâm lý để vận dụng cấu trúc điều kiện kèm theo và vòng lặp này để viết 1 số ít chương trình đơn thuần ( 1 số ít gợi ý như : game show kéo – búa – bao, tìm số lớn nhất trong dãy số … ) .