Điều khiển luồng trong Python

Các bạn cũng đã khá quen thuộc với các lệnh điều khiển luồng trong C, C++ như if, if else, … Chương này sẽ trình bày về các lệnh điều khiển luồng trong Python.

Ngôn ngữ lập trình Python coi các giá trị khác null và khác 0 là true, và coi các giá trị là null hoặc 0 là false.

Sau đây chúng ta cùng tìm hiểu các lệnh điều khiển luồng trong Python:

Lệnh if trong Python

Lệnh if trong Python là giống như trong ngôn ngữ C. Lệnh này được sử dụng để kiểm tra một điều kiện, nếu điều kiện là true thì lệnh của khối if sẽ được thực thi, nếu không nó sẽ bị bỏ qua.

Lệnh if trong Python là giống như trong ngôn ngữ C. Lệnh này được sử dụng để kiểm tra một điều kiện, nếu điều kiện là true thì lệnh của khối if sẽ được thực thi, nếu không nó sẽ bị bỏ qua.

Cú pháp của lệnh if là:

if bieu_thuc:

   cac_lenh

Ví dụ của lệnh if trong Python:

var1 = 100

if var1:

   print "1 - Nhan mot gia tri true"

   print var1

var2 = 0

if var2:

   print "2 - Nhan mot gia tri true"

   print var2

print "Good bye!"

Khi code trên được thực thi sẽ cho kết quả:

1 - Nhan mot gia tri true

100

Good bye!

Lệnh if…else trong Python

Một lệnh else có thể được sử dụng kết hợp với lệnh if. Một lệnh else chứa khối code mà thực thi nếu biểu thức điều kiện trong lệnh if được ước lượng là 0 hoặc một giá trị false. Lệnh else là lệnh tùy ý và chỉ có duy nhất một lệnh else sau lệnh if.

Một lệnh else có thể được sử dụng kết hợp với lệnh if. Một lệnh else chứa khối code mà thực thi nếu biểu thức điều kiện trong lệnh if được ước lượng là 0 hoặc một giá trị false. Lệnh else là lệnh tùy ý và chỉ có duy nhất một lệnh else sau lệnh if.

Cú pháp của lệnh if...else là:

if bieu_thuc:

   cac_lenh

else:

   cac_lenh

Dưới đây là ví dụ minh họa lệnh if...else trong Python:

var1 = 100

if var1:

   print "1 - Nhan mot gia tri true"

   print var1

else:

   print "1 - Nhan mot gia tri false"

   print var1

var2 = 0

if var2:

   print "2 - Nhan mot gia tri true"

   print var2

else:

   print "2 - Nhan mot gia tri false"

   print var2

print "Good bye!"

Khi code trên được thực thi sẽ cho kết quả:

1 - Nhan mot gia tri true

100

2 - Nhan mot gia tri false

0

Good bye!

Lệnh elif trong Python

Lệnh elif cho phép bạn kiểm tra nhiều điều kiện và thực thi khối code ngay khi một trong các điều kiện được ước lượng là true. Cũng giống như lệnh else, lệnh elif là tùy ý. Tuy nhiên, không giống else mà chỉ có một lệnh được theo sau if, thì bạn có thể sử dụng nhiều elif theo sau if.

Cú pháp của lệnh elif là:

if bieu_thuc1:

   cac_lenh

elif bieu_thuc2:

   cac_lenh

elif bieu_thuc3:

   cac_lenh

else:

   cac_lenh

Python không cung cấp các lệnh switch hoặc case như trong các ngôn ngữ lập trình khác, tuy nhiên bạn có thể sử dụng các lệnh if…elif để thực hiện vai trò như của switch hoặc case như trong ví dụ trên.

Dưới đây là ví dụ của lệnh elif trong Python:

var = 100

if var == 200:

   print "1 - Nhan mot gia tri true"

   print var

elif var == 150:

   print "2 - Nhan mot gia tri true"

   print var

elif var == 100:

   print "3 - Nhan mot gia tri true"

   print var

else:

   print "4 - Nhan mot gia tri false"

   print var

 

print "Good bye!"

Khi code trên được thực thi sẽ cho kết quả:

3 - Nhan mot gia tri true

100

Good bye!

Lồng các lệnh if trong Python

Đôi khi có một tình huống là khi bạn muốn kiểm tra thêm một điều kiện khác sau khi một điều kiện đã được ước lượng là true. Trong tình huống như vậy, bạn có thể sử dụng các lệnh if lồng nhau trong Python.

Trong cấu trúc các lệnh if lồng nhau, bạn có thể có cấu trúc if…elif…else bên trong cấu trúc if…elif…else khác.

Đôi khi có một tình huống là khi bạn muốn kiểm tra thêm một điều kiện khác sau khi một điều kiện đã được ước lượng là true. Trong tình huống như vậy, bạn có thể sử dụng các lệnh if lồng nhau trong Python.

Trong cấu trúc các lệnh if lồng nhau, bạn có thể có cấu trúc if…elif…else bên trong cấu trúc if…elif…else khác.

Cú pháp của cấu trúc lồng các lệnh if như sau:

if bieu_thuc1:

   cac_lenh

   if bieu_thuc2:

      cac_lenh

   elif bieu_thuc3:

      cac_lenh

   else

      cac_lenh

elif bieu_thuc4:

   cac_lenh

else:

   cac_lenh

Dưới đây là ví dụ minh họa cho cấu trúc các lệnh if lồng nhau trong Python:

var = 100

if var < 200:

   print "Gia tri bieu thuc la nho hon 200"

   if var == 150:

      print "Do la 150"

   elif var == 100:

      print "Do la 100"

   elif var == 50:

      print "Do la 50"

elif var < 50:

   print "Gia tri bieu thuc la nho hon 50"

else:

   print "Khong tim thay bieu thuc true"

 

print "Good bye!"

Khi code trên được thực thi sẽ cho kết quả sau:

Gia tri bieu thuc la nho hon 200

Do la 100

Good bye!

Trường hợp các Suite lệnh đơn

Bạn đã tìm hiểu về suite trong chương Cú pháp cơ bản. Nếu suite của một mệnh đề if chỉ bao gồm một dòng lệnh đơn, thì nó có thể ở trên cùng một dòng như là header của lệnh.

Dưới đây là ví dụ đơn giản về một mệnh đề if một dòng:

var = 6677028

if ( var  == 6677028 ) : print "Gia tri cua bieu thuc la 6677028"

print "Beautiful!"

Khi code trên được thực thi sẽ cho kết quả:

Gia tri cua bieu thuc la 6677028

Beautiful