Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Python range() giải thích: Nó là gì và cách sử dụng

Một khía cạnh của lập trình mà nhiều hướng dẫn không nói rõ từ đầu là lượng lặp và đếm bạn sẽ phải làm. Vì vậy, bất kỳ ngôn ngữ lập trình nào đáng giá cũng sẽ cung cấp cách để liệt kê số theo cách lặp lại. Kiểu sequence range của Python là một trong những phương pháp đó.

Trong bài viết này, chúng ta xem xét Python range() và chỉ cho bạn cách nó được dùng trong chương trình của bạn.

Giới thiệu kiểu sequence Python range()

Mặc dù trông như một hàm, range() thực chất là một kiểu sequence bất biến (immutable) tích hợp sẵn trong Python 3. Vì vậy, nó được nhóm với list và tuple như một cách gom dữ liệu để lặp sau này.

Tóm lại, đó là một cách để lặp lại hành động một số lần nhất định. Trong Python 2, nó gọi là xrange() và cung cấp chức năng gần như giống nhau. Thực tế, range() mạnh hơn xrange() và có một vài khác biệt. Chúng ta thảo luận cụ thể hơn bên dưới.

Như bạn mong đợi, range() của Python 3 rất tốt cho tác vụ lặp và lặp qua list và dictionary. Hãy xem hàm này hoạt động như thế nào.

Cách dùng kiểu sequence Python range()

Trước hết, hãy chỉ cho bạn cấu trúc cơ bản của range() trong Python:

range(y)

Đây đơn giản như một hàm Python có thể. Ở đây, y có thể là bất kỳ số nguyên nào (số dấu phẩy động không được hỗ trợ mặc định). Với ứng dụng, bạn thường sẽ gán range() cho một biến. Khi range() chạy, nó trả về một tuple. Nếu bạn in biến được gán, bạn sẽ thấy tuple đó được trả về trong đầu ra.

Trong ứng dụng thực tế, bạn thường sẽ dùng một dạng lặp nào đó, như ví dụ này dùng for.

Bạn sẽ nhận thấy range() dùng 0 làm điểm bắt đầu. Tuy nhiên, đó chỉ là mặc định. Thực tế, range() có một số đối số khác bạn có thể đặt. Đây là cấu trúc:

range(start, stop, step)

Để giải thích: ba số nguyên được định nghĩa: điểm bắt đầu, điểm dừng, và range có bỏ qua số hay không. Chỉ đối số stop là bắt buộc – các đối số khác là tùy chọn.

Điều này cho bạn sự linh hoạt và sức mạnh lớn để xây dựng cả các vòng lặp và tuple phức tạp. Ví dụ, bạn có thể chỉ định phạm vi chính xác của các số nguyên chẵn.

Hơn nữa, bạn cũng có thể kết hợp các hàm để chuyển tuple được tạo thành list tiêu chuẩn.

Python range() không chỉ tốt cho lặp tăng dần – nó cũng có thể dùng cho số giảm dần.

Theo chúng tôi, range() là một "con mã lao" thực sự và chắc chắn sẽ tìm thấy nhiều dụng處 trong chương trình của bạn.

Kết luận

Python giỏi nhiều ứng dụng mạnh, nhưng tạo list, dictionary, và tuple là điểm mạnh. Bằng cách dùng kiểu sequence Python range(), bạn có thể nhanh chóng xây dựng một tuple chỉ chứa các số bạn yêu cầu. Hơn nữa, Python cho phép bạn kết hợp range() với các hàm khác, như list(), để cung cấp sự linh hoạt trong cách bạn lưu trữ những số được tạo ra.

Nếu bạn chưa nhảy sang Python 3 và đang dùng macOS, chúng tôi đã từng xuất bản bài viết chỉ cho bạn cách làm.