Page 128 - Em Học Python
P. 128

Ta vừa mới tạo được một hàm kết hợp hai hàm khác, một việc rất hay gặp trong lập

               trình. Thường thì là thế này, em viết ra một hàm để thực hiện việc gì đó, sau đó em sẽ dùng
               hàm này bên trong một hàm khác. (Ta sẽ làm thế ở Chương 13 khi cần phải viết vài hàm

               khá phức tạp cho game.)


                       Giờ thử dùng  self để thêm vài hàm khác cho lớp  Giraffes:
                                                                                   ​
                                         ​
               >>> class Giraffes(Mammals):
                       def find_food(self):
                           self.move()
                           print("I've found food!")
                           self.eat_food()
                                                       ​
                             ​
                              ​
                         ​
                       def eat_leaves_from_trees(self):
                           self.eat_food()
                             ​
                         ​
                       def dance_a_jig(self):
                                           ​
                              ​
                           self.move()
                           self.move()
                           self.move()
                           self.move()
                       Ta có thể dùng các hàm  eat_food và move của lớp cha  Animals để
                                                             ​
                                                                 ​
                                                                                       ​
                                                         ​
                                                            ​
               viết ra hai hàm  eat_leaves_from_trees và dance_a_jig cho lớp  Giraffes
                                                         ​
                                                                         ​
               vì chúng đều được thừa kế lại. Viết hàm rồi gọi hàm như thế này giúp ta về
               sau khi tạo một đối tượng mới, ta chỉ cần gọi một hàm thôi trong khi vẫn
               làm được nhiều việc cùng lúc. Em có thể thấy điều này khi ta gọi hàm
               dance_a_jig như dưới đây — Reginal sẽ di chuyển 4 lần (ý là có 4 chữ  moving đó):
                                                                                              ​
                             ​
                   ​
               >>> reginald = Giraffes()

                   ​
               >>> reginald.dance_a_jig()
               moving
               moving
               moving
               moving
















               102          Chương 8
                  ​
   123   124   125   126   127   128   129   130   131   132   133