Page 145 - Em Học Python
P. 145

.
               số cuối   Em đã thấy hàm  range với hai tham số ở
                                               ​
               ví dụ trên khi kết hợp với hàm  len để chạy vòng
                                                  ​
               lặp.


                       Các số được  range sinh ra sẽ bắt đầu với
                                         ​
               tham số thứ nhất và kết thúc với tham số thứ

               hai trừ đi một. Ví dụ để in ra các số  range sinh ra
                                                          ​
               trong khoảng 0 đến 5:


                               ​
                        ​
                    ​
                           ​
                              ​
                   ​
               >>> for x in range(0, 5):
                                     ​
                         ​
                       print(x)
                               ​
               0
               1
               2
               3
               4
                            ​
                       Hàm range thực chất trả về một đối tượng đặc biệt gọi là  con chạy  ⟨iterator⟩ , đối
                                  ​
                                                                                                    ​
               tượng này sẽ làm đi làm lại việc gì đó một số lần nhất định.
                       Em có thể biến con chạy này sang một mảng (dùng hàm  list). Khi in ra kết quả em
                                                                                      ​
               sẽ thấy các con số bên trong nó:


                                 ​
                                ​
                                       ​
               >>> print(list(range(0, 5)))
                           ​
                          ​
                   ​
                    ​
               [0, 1, 2, 3, 4]
                       Em cũng có thể thêm một tham số thứ ba vào  range, là số bước    Nếu ta không
                                                                                       .
                                                                               ​
                                                                            ​
               truyền số bước vào, thì mặc định nó sẽ là 1. Nhưng nếu ta truyền 2 vào thì sao? Kết quả đây:
                                             ​
                                                   ​
                                            ​
                   ​
               >>> count_by_twos = list(range(0, 30, 2))
                                       ​
               >>> print(count_by_twos)
                    ​
                   ​
                          ​
               [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28]
                       Mỗi số trong mảng giờ đây được cộng thêm hai từ số đằng trước nó, và mảng giờ sẽ
               kết thúc ở số 28, tức là nhỏ hơn 2 so với 30.






                                                                               Các hàm Python được viết sẵn           119
   140   141   142   143   144   145   146   147   148   149   150