Đảo ngược một danh sách (list)

Để đảo ngược một danh sách (list) trong Python, bạn có thể sử dụng nhiều phương pháp khác nhau. Dưới đây là một số cách phổ biến:

1. Sử dụng phương thức reverse()

Phương thức này thay đổi danh sách ban đầu mà không tạo ra một danh sách mới.

python

my_list = [1, 2, 3, 4, 5]
my_list.reverse()
print(my_list)  # Kết quả: [5, 4, 3, 2, 1]

2. Sử dụng slicing

Cách này tạo một danh sách mới đảo ngược từ danh sách ban đầu.

python

my_list = [1, 2, 3, 4, 5]
reversed_list = my_list[::-1]
print(reversed_list)  # Kết quả: [5, 4, 3, 2, 1]

3. Sử dụng hàm reversed()

Hàm này trả về một iterator, bạn có thể chuyển đổi nó thành danh sách.

python

my_list = [1, 2, 3, 4, 5]
reversed_list = list(reversed(my_list))
print(reversed_list)  # Kết quả: [5, 4, 3, 2, 1]

4. Sử dụng vòng lặp

Bạn có thể đảo ngược danh sách bằng cách sử dụng một vòng lặp.

python

my_list = [1, 2, 3, 4, 5]
reversed_list = []
for item in my_list:
    reversed_list.insert(0, item)  # Thêm từng phần tử vào đầu danh sách mới
print(reversed_list)  # Kết quả: [5, 4, 3, 2, 1]

5. Sử dụng đệ quy

Dưới đây là một cách đơn giản để đảo ngược danh sách bằng phương pháp đệ quy:

python

def reverse_recursive(lst):
    # Cơ sở đệ quy
    if len(lst) == 0:
        return []
    else:
        return [lst[-1]] + reverse_recursive(lst[:-1])

my_list = [1, 2, 3, 4, 5]
reversed_list = reverse_recursive(my_list)
print(reversed_list)  # Kết quả: [5, 4, 3, 2, 1]

Tóm tắt

Tùy thuộc vào nhu cầu sử dụng, bạn có thể chọn bất kỳ phương pháp nào ở trên để đảo ngược danh sách trong Python. Phương thức reverse() và slicing là hai cách đơn giản và hiệu quả nhất.

Để lại một bình luận