Thứ Ba, 29 tháng 5, 2018

Cấu trúc rẽ nhánh trong Python

Bài viết là tài liệu tham khảo cho khóa đào tạo lập trình C/C++ của STDIO Training.
Tìm hiểu và đăng ký học tại đây.
STDIO Trong cuộc sống hằng ngày, chắc chắn đôi lúc bạn cần phải có nhiều dự tính trước cho một vấn đề gặp phải. Thật vậy, khi gặp một vấn đề nào đó, trong mỗi hoàn cảnh, điều kiện khác nhau bạn cần phải xử lý chúng khác nhau. Lập trình cũng thế, cũng một vấn đề nhưng sẽ có nhiều trường hợp cần giải quyết. Chính vậy, Python đã cung cấp và hỗ trợ chúng ta về cấu trúc rẽ nhánh cho phép chúng ta giải quyết được vấn đề nêu trên.Trong bài viết ngày hôm nay, tôi sẽ cùng các bạn đi tìm hiểu về cấu trúc rẽ nhánh trong Python.
Nội dung bài viết

Giới thiệu

Trong cuộc sống hằng ngày, chắc chắn đôi lúc bạn cần phải có nhiều dự tính trước cho một vấn đề gặp phải. Thật vậy, khi gặp một vấn đề nào đó, trong mỗi hoàn cảnh, điều kiện khác nhau bạn cần phải xử lý chúng khác nhau. Lập trình cũng thế, cũng một vấn đề nhưng sẽ có nhiều trường hợp cần giải quyết. Chính vậy, Python đã cung cấp và hỗ trợ chúng ta về cấu trúc rẽ nhánh cho phép chúng ta giải quyết được vấn đề nêu trên.
Trong bài viết ngày hôm nay, tôi sẽ cùng các bạn đi tìm hiểu về cấu trúc rẽ nhánh trong Python.

Tiền đề bài viết

Khi tiếp xúc với python, nó thật sự khiến tôi thấy thú vị và muốn nghiên cứu sâu về nó. Trong một lần tham gia chương trình học dành cho những người mới bắt đầu của anh La Kiến Vinh ::  www.stdio.vn/users/index/1/la-kien-vinh, tôi bắt đầu tìm hiểu và lên kế hoạch cho việc xây dựng một chương trình tự học Python cũng như các chương trình khác của STDIO :: www.stdio.vn.
Bài viết nằm trong chuỗi các bài hướng dẫn về ngôn ngữ lập trình Python.

Đối tượng hướng đến

Bài viết hướng đến tất cả các đối tượng muốn quan tâm và muốn tìm hiểu về Python.

Nội dung

Khái niệm cấu trúc rẽ nhánh

Cấu trúc rẽ nhánh là cấu trúc dùng để mô tả các mệnh đề được chọn thực hiện hay không thực hiện một công việc phù hợp với điều kiện đang xảy ra.
Ví dụ sau là một trường hợp về cấu trúc rẽ nhánh trong cuộc sống bạn có thể gặp phải.
Nếu ngày mai trời không mưa tôi sẽ qua nhà bạn, trời mưa thì tôi ở nhà.

Cấu trúc rẽ nhánh trong Python

Không như C/C++, trong Python không tồn tại khái niệm về switch...case mà chỉ tồn tại cấu trúc điều kiện if...else.
Để sử dụng cấu trúc rẽ nhánh trong Python, bạn cần biết cú pháp sau:

Cấu trúc if...else

  1. if (boolean_expression):
  2. statements
  3. else:
  4. statements
Nguyên tắc hoạt động
Phần else là không bắt buộc, có thể có hoặc không.
Kiểm tra xem giá trị trả về của biểu thức bên trong if trả về là true hay false. Nếu giá trị trả về là true, thì các khối lệnh (statements) sau if sẽ được thực thi. Ngược lại, nếu giá trị trả về là false, thì sẽ kiểm tra xem có else hay không, nếu có sẽ thực thi các khối lệnh theo sau nó, còn không thì kết thúc cấu trúc và chuyển sang câu lệnh tiếp theo.
Ví dụ
  1. i = 2
  2.  
  3. if (i > 3):
  4. print("i is greater than 3")
  5. else:
  6. print("i is less than or equal to 3")
Dễ dạng nhận ra kết quả nhận được sẽ là:
  1. i is less than or equal to 3

Cấu trúc if...elif

Theo cá nhân tôi thì đây mới chính là cấu trúc rẽ nhánh thật sự đầy đủ của Python, cấu trúc if..else là một rút gọn của if..elif
  1. if (boolean_expression):
  2. statements
  3. elif (boolean_expression):
  4. statements
  5. .
  6. .
  7. elif (boolean_expression):
  8. statements
  9. else:
  10. statements
Về nguyên tắc hoạt động thì if..elif hoạt động tương tự như if...else. Phần else là không bắt buộc và từ khoá elif chính là từ viết tắt của else if. Các bạn có thể tham khảo ví dụ sau để rõ hơn.
  1. i = 2
  2.  
  3. if (i > 3):
  4. print("i is greater than 3")
  5. elif (i > 1):
  6. print("i is greater than 1")
  7. else:
  8. print("i is less than or equal to 1")
Kết quả in ra màn hình
  1. i is greater than 1
  2. Bạn muốn học lập trình hãy liên hệ ngay với Mỹ Vân để được nhận ưu đãi từ học viện nhé
    Học lập trình tại Đà Nẵng
    Học lập trình tại Đà Nẵng 0935029202
    Số tài khoản : 56110000942174 BIDV Chi nhánh Đà Nẵng
    HUYNH THI MY VAN

Không có nhận xét nào:

Đăng nhận xét