Page 84 - Em Học Python
P. 84

LỆNH IF VÀ ELIF




                                                                                                  ​
                       Ta còn có thể mở rộng lệnh  if hơn nữa với  elif (là viết gọn của  hoặc nếu ⟨else-if⟩).
                                                      ​
                                                                        ​
                                                                                                          ​
               Ví dụ, ta có thể kiểm tra một ai đó xem có phải 10, 11 hoặc 12 tuổi không (hoặc hơn nữa), và
               chương trình sẽ làm gì đó khang khác tùy câu trả lời. Lệnh lần này hơi khác so với
               if-then-else ở chỗ em muốn dùng bao nhiêu  elif ở đây cũng được:
                                                                    ​
                         ​
                              ​
                  ​
               >>> age = 12
                   ​
                   ​
                    ​
               >>> if age == 10:
                       ​
                                ​
                               ​
                       print("What do you call an unhappy cranberry?")
                         ​
                                                                                ​
                                ​
                       print("A blueberry!")
                         ​
                               ​
                                                 ​
                    ​
               elif age == 11:
                         ​
                       print("What did the green grape say to the blue grape?")
                               ​
                                ​
                                                                                           ​
                         ​
                                ​
                                                       ​
                               ​
                       print("Breathe! Breathe!")
                    ​
               elif age == 12:
                       print("What did 0 say to 8?")
                         ​
                               ​
                                ​
                                                           ​
                         ​
                               ​
                                            ​
                       print("Hi guys!")
                                ​
                    ​
               elif age == 13:
                                                                  ​
                                ​
                               ​
                         ​
                       print("Why wasn't 10 afraid of 7?")
                                                                               ​
                               ​
                       print("Because rather than eating 9, 7 8 pi.")
                         ​
                                ​
               else:
                    ​
                       print("Huh?")
                                ​
                                       ​
                         ​
                               ​
               What did 0 say to 8?
               Hi guys!
                       Trong ví dụ này, lệnh  if ở dòng thứ 2 kiểm tra xem giá trị của  age có bằng 10 không
                                               ​
                                                                                          ​
               ở ❶. Các lệnh  print sau đó ở ❷ sẽ chỉ chạy nếu  age bằng 10. Tuy nhiên vì ta đặt  age bằng
                                                                    ​
                                                                                                     ​
                                    ​
               12 nên máy tính sẽ nhảy sang lệnh  if tiếp theo ở ❸ và kiểm tra xem  age có bằng 11 không.
                                                      ​
                                                                                          ​
               Rõ là không, nên máy tính sẽ lại nhảy sang lệnh  if tiếp theo nữa ở ❹ để xem  age có bằng
                                                                    ​
                                                                                                  ​
               12 không. Lần này thì đúng rồi nha, nên máy sẽ chạy mấy lệnh  print ở ❺.
                                                                                      ​
                       Nếu gõ đoạn code này trên IDLE, chương trình sẽ tự động lùi đầu dòng cho em, nên
               em phải dùng các phím  BACKSPACE hoặc  DELETE mỗi khi gõ xong lệnh  print, để cho các
                                                                                                ​
                                                     ​
                                                                   ​
                              ​
                        ​
               lệnh  if, elif, else của em bắt đầu từ sát phía bên trái. Đây thực ra chính là vị trí của lệnh
                       ​
                             ​
                                  ​
               if nếu không có dấu nhắc ( >>>).
                                               ​
                  ​
               58          Chương 5
                  ​
   79   80   81   82   83   84   85   86   87   88   89