Computer >> Máy Tính >  >> Lập trình >> Python

Sắp xếp bộ tuple dựa trên sự xuất hiện của phần tử đầu tiên trong Python

Khi cần sắp xếp bộ tuple dựa trên sự xuất hiện của phần tử đầu tiên, phương thức dict.fromkeys có thể được sử dụng.

Một danh sách có thể được sử dụng để lưu trữ các giá trị không đồng nhất (tức là dữ liệu thuộc bất kỳ kiểu dữ liệu nào như số nguyên, dấu phẩy động, chuỗi, v.v.).

Về cơ bản, một danh sách các bộ chứa các bộ chứa trong một danh sách.

Phương thức 'dict.fromkeys' sẽ trả về từ điển với một khóa và một giá trị cụ thể.

Dưới đây là một minh chứng cho điều tương tự -

Ví dụ

def sort_on_occurence(my_lst):
   my_dict = {}
   for i, j in my_lst:
      my_dict.setdefault(i, []).append(j)
   return([(i, *dict.fromkeys(j), len(j))
      for i, j in my_dict.items()])

my_list = [(1, 'Harold'), (12, 'Jane'), (4, 'Paul'), (7, 'Will')]
print("The list of tuples is")
print(my_list)
print("The list after sorting by occurence is")
print(sort_on_occurence(my_list))

Đầu ra

The list of tuples is
[(1, 'Harold'), (12, 'Jane'), (4, 'Paul'), (7, 'Will')]
The list after sorting by occurence is
[(1, 'Harold', 1), (12, 'Jane', 1), (4, 'Paul', 1), (7, 'Will', 1)]

Giải thích

  • Một phương thức có tên 'sort_on_occurence' được xác định, sử dụng một danh sách các tuple làm tham số.
  • Một từ điển mới đã được tạo.
  • Danh sách các bộ được lặp lại và các giá trị mặc định được đặt bên trong từ điển trống.
  • Một danh sách các bộ giá trị được xác định và hiển thị trên bảng điều khiển.
  • Hàm được gọi bằng cách chuyển danh sách bộ tuple đã xác định ở trên.
  • Đây là đầu ra được hiển thị trên bảng điều khiển.