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

Chương trình Python để sắp xếp bảng dựa trên chỉ số thuộc tính đã cho

Giả sử chúng ta có một danh sách 2d chứa thông tin về các vận động viên. Thông tin này là cấp bậc, tuổi, chiều cao. Mỗi hàng chứa thông tin cho các vận động viên khác nhau. Chúng ta cũng có một số k khác. Chúng ta phải sắp xếp dữ liệu dựa trên thuộc tính kth.

Vì vậy, nếu đầu vào giống như

Xếp hạng tuổi height
1 25 190
2 35 180
3 33 185
4 26 175
5 35 180

Và k =1.

thì đầu ra sẽ là

Xếp hạng tuổi height
1 25 190
4 26 175
3 33 185
2 35 180
5 35 180

[[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • Gọi hàm sort () cho mảng 2d được gọi là thông tin

  • xác định một hàm sắp xếp dựa trên đối số thứ k và chuyển nó vào tham số chính của hàm sort ().

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn

def solve(info, k):
   info.sort(key = lambda x: x[k])
   return info

info = [[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]]
k = 1
print(solve(info, k))

Đầu vào

[[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]], 1

Đầu ra

[[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]