Hàm reversed() trong Python
Hàm reversed() trong Python là một hàm built-in (nằm trong gói cơ bản) cho phép trả về một iterator (bộ lặp) cho các phần tử trong một iterable (đối tượng có thể lặp) theo thứ tự ngược lại. Iterable có thể là danh sách, tuple, chuỗi,... Hàm này hữu ích trong việc làm việc với các dãy theo thứ tự ngược, ví dụ như trong việc lặp qua dãy theo thứ tự ngược hoặc tạo bản sao của dãy theo thứ tự ngược lại.
Hàm reversed() có cú pháp ra sao, có những tham số nào, bạn hãy cùng Quantrimang tìm hiểu trong bài viết này nhé.

Cú pháp hàm reversed() trong Python
reversed(seq)
Các tham số của hàm reversed():
reversed() có duy nhất một tham số:
seq
: chuỗi bạn muốn đảo ngược.
Chuỗi là đối tượng hỗ trợ các giao thức chuỗi như các phương thức __len __() và __getitem __(). Ví dụ: tuple, string, list, range...
Có thể sử dụng reversed() với bất kỳ đối tượng nào thực thi __reverse__().
Ví dụ đơn giản về cách sử dụng hàm reversed():
my_list = [1, 2, 3, 4, 5]
reversed_list = list(reversed(my_list))
print(reversed_list)
Ta sẽ thu được kết quả:
[5, 4, 3, 2, 1]
Giá trị trả về từ reversed()
Hàm reversed() cho phép ta xử lý các mục theo thứ tự ngược lại chuỗi ban đầu, nhận chuỗi và trả về một iterator với giá trị đảo ngược của chuỗi ban đầu truyền vào.
Một số cách khác để sử dụng hàm reversed() trong Python
1. Sử dụng reversed() với vòng lặp for
Bạn có thể sử dụng reversed()
trong vòng lặp for
để lặp qua các phần tử của một iterable theo thứ tự ngược lại. Đây là câu lệnh tiếp theo ví dụ my_list
trên:
>>> for i in reversed(my_list):
>>> print(i)
2. Sử dụng reversed() với next()
Bạn có thể sử dụng next()
để lấy các phần tử từ một iterator trả về bởi reversed()
.
>>> iterator = reversed(my_list)
>>> next(iterator)
5
>>> next(iterator)
4
3. Sử dụng reversed() với list comprehension
Bạn có thể sử dụng reversed()
trong một list comprehension để tạo một danh sách mới có các phần tử theo thứ tự ngược lại từ một iterable.
>>> [i for i in reversed(my_list)]
# Kết quả:
[5, 4, 3, 2, 1]
Một số ví dụ sử dụng reversed()
Sử dụng reversed() với string, tuple, list và range
print( reversed([44, 11, -90, 55, 3]) )
# với string
seq_string = 'Python'
print(list(reversed(seq_string)))
# với tuple
seq_tuple = ('P', 'y', 't', 'h', 'o', 'n')
print(list(reversed(seq_tuple)))
# với range
seq_range = range(5, 9)
print(list(reversed(seq_range)))
# với list
seq_list = [1, 2, 4, 3, 5]
print(list(reversed(seq_list)))
Chạy chương trình, kết quả trả về là:
<list_reverseiterator object at 0x7f6311566eb8>
['n', 'o', 'h', 't', 'y', 'P']
['n', 'o', 'h', 't', 'y', 'P']
[8, 7, 6, 5]
[5, 3, 4, 2, 1]
Ở ví dụ trên, ta đang chuyển đổi kết quả của reversed() thành list bằng cách sử dụng hàm list().
reversed() với các đối tượng tùy chỉnh
class Vowels:
vowels = ['a', 'e', 'i', 'o', 'u']
def __reversed__(self):
return reversed(self.vowels)
v = Vowels()
print(list(reversed(v)))
Chạy chương trình, kết quả trả về là:
['u', 'o', 'i', 'e', 'a']
Như vậy, tùy vào đề bài và từng nhu cầu cụt hể, bạn có thể sử dụng các phương pháp trên để tạo ra một danh sách theo thứ tự ngược lại hoặc lặp qua một iterable theo thứ tự ngược lại.
Bạn nên đọc
-
Ma trận trong Python
-
Hàm issubclass() trong Python
-
Hàm format() trong Python
-
Mảng trong Python
-
Hàm set() trong Python
-
Hàm trong Python là gì? Các hàm trong Python
-
Chuyển đổi giá trị timestamp trong Python
-
Kiểu dữ liệu trong Python: chuỗi, số, list, tuple, set và dictionary
-
Lệnh if, if...else, if...elif...else trong Python
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
Tổng hợp các cách bật Bluetooth trên Windows 10/8/7
Hôm qua -
Dãn hay giãn đúng chính tả? Co dãn hay Co giãn, Thư dãn hay Thư giãn mới đúng?
Hôm qua -
Cách vô hiệu hóa Facebook nhưng vẫn dùng Messenger
Hôm qua -
6 phần mềm chỉnh sửa ảnh miễn phí tốt nhất trên máy tính
Hôm qua 3 -
Một số cách sửa lỗi Start Menu trên Windows 10 ngừng hoạt động
Hôm qua 5 -
Những câu nói hay về tình anh em xã hội, stt về tình anh em kết nghĩa càng đọc càng thấm
Hôm qua -
Cách sử dụng mail merge trong Word để trộn văn bản
Hôm qua -
3 cách cố định hình ảnh trong Word, khóa di chuyển để không làm ảnh hưởng bố cục
Hôm qua -
Cách hiện đuôi file, xem phần mở rộng file trên Windows 11/10/7/8
Hôm qua -
Fake IP, phần mềm đổi IP, lướt web ẩn danh tốt nhất
Hôm qua