Page 136 - Em Học Python
P. 136

​
                          ​
                                                                                            ​
                   ​
                                 ​
                           ​
                                ​
               >>> print(bool('What do you call a pig doing karate? Pork Chop!'))
               True
                       Hàm bool cũng trả về  False nếu mảng, tuple và map bị rỗng, ngược lại thì là  True:
                            ​
                                                   ​
                                                                                                          ​
                                 ​
                   ​
               >>> my_silly_list = []
                                ​
                           ​
                    ​
               >>> print(bool(my_silly_list))
                          ​
                   ​
               False
                   ​
                                                              ​
                                                           ​
                                                        ​
               >>> my_silly_list = ['s', 'i', 'l', 'l', 'y']
                                                                    ​
                                                                 ​
                                                     ​
                                            ​
                                         ​
                                               ​
                                                  ​
                                ​
                           ​
                          ​
                    ​
               >>> print(bool(my_silly_list))
                   ​
               True
                       bool có thể được dùng để kiểm tra xem một biến nào đó có giá trị hay không. Giả sử
                           ​
               nếu ta yêu cầu ai đó nhập năm sinh vào chương trình, lệnh  if có thể dùng hàm  bool để
                                                                               ​
                                                                                                      ​
               kiểm tra giá trị đầu vào:
                             ​
                                    ​
               >>> year = input('Year of birth: ')
                                   ​
                                                        ​
                   ​
               Year of birth:
                    ​
               >>> if not bool(year.rstrip()):
                                 ​
                       ​
                             ​
                           ​
                   ​
                        ​
                       print('You need to enter a value for your year of birth')
                                                                                            ​
                         ​
                                ​
                               ​
               You need to enter a value for your year of birth
                       Trong ví dụ trên, dòng đầu sử dụng  input để ghi lại thông tin người dùng nhập từ
                                                                 ​
               bàn phím vào biến  year. Nhấn  ENTER luôn ở dòng thứ hai (mà không điền năm sinh gì
                                        ​
                                                      ​
               hết), chương trình sẽ ghi nhận việc phím  ENTER này vào biến. (Ở Chương 7 ta sử dụng
                                                                 ​
               sys.stdin.readline(), đây chỉ là một cách làm khác thôi, kết quả đều giống nhau.)
                                       ​
                       Dòng tiếp theo, lệnh  if kiểm tra giá trị Boolean của
                                              ​
               biến sử dụng hàm  rstrip (hàm này sẽ xóa các khoảng trắng
                                          ​
               và các lần nhấn  ENTER của chuỗi từ phải sang trái). Lúc này
                                       ​
               do không thực sự điền gì lúc nãy, nên  bool trả về  False. Tuy
                                                                        ​
                                                           ​
               nhiên lệnh  if lúc này lại sử dụng từ khóa  not, cho nên ý nó
                                                              ​
                              ​
               thực sự lại là, “nếu kết quả trả về không phải là  True thì làm
                                                                    ​
               việc này này” nên code mới in ra  You need to enter a
               value for your year of birth ở dòng cuối.
                                                 ​
               110          Chương 9
                  ​
   131   132   133   134   135   136   137   138   139   140   141