Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Sắp xếp danh sách chuỗi theo ký tự cuối (Rear Character)

Sắp xếp danh sách chuỗi dựa trên ký tự cuối cùng của mỗi chuỗi. Sử dụng hàm key với negative indexing [-1].

Mã nguồn

def get_rear_position(element):
    return element[-1]  # Ký tự cuối

my_list = ['python', 'is', 'fun', 'to', 'learn']
print("Danh sách gốc:", my_list)

my_list.sort(key=get_rear_position)
print("Danh sách sau sắp xếp:", my_list)

Kết quả

Danh sách gốc: ['python', 'is', 'fun', 'to', 'learn']
Danh sách sau sắp xếp: ['python', 'fun', 'learn', 'to', 'is']

Giải thích

  • Hàm get_rear_position trả về element[-1] (ký tự cuối).
  • sort(key=...) sắp xếp dựa trên giá trị trả về của hàm key.
  • Ký tự cuối: 'n', 's', 'n', 'o', 'n' → thứ tự ASCII: 'n'=110, 'o'=111, 's'=115.
  • Kết quả: 'python'(n), 'fun'(n), 'learn'(n), 'to'(o), 'is'(s).
  • Các từ cùng ký tự cuối ('n') giữ thứ tự gốc (stable sort).

Cách ngắn gọn (lambda)

my_list.sort(key=lambda x: x[-1])

Áp dụng cho bất kỳ sequence nào hỗ trợ indexing (list, tuple, string).