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

Python - Sắp xếp các mục trong danh sách dựa trên các chữ số của chúng

Khi cần sắp xếp các phần tử của danh sách dựa trên các chữ số, phương pháp ‘max’, ‘max’ được sử dụng. Chúng tôi cũng sẽ sử dụng phương thức ‘sắp xếp’, hàm ‘lambda’ và ‘ljust’.

Ví dụ

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

my_list = [4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1]

print("The list is : " )
print(my_list)

print("The list after sorting is : " )
my_list.sort()
print(my_list)

my_temp_val = map(str, my_list)

my_max_length = max(map(len, my_temp_val))

my_result = sorted(my_list, key = lambda index : (str(index).ljust(my_max_length, 'a')))

print("The resultant list is : ")
print(my_result)

Đầu ra

The list is :
[4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1]
The list after sorting is :
[1, 10, 33, 120, 122, 390, 460, 541, 892, 2611, 2909, 4344, 11239, 48292]
The resultant list is :
[10, 11239, 120, 122, 1, 2611, 2909, 33, 390, 4344, 460, 48292, 541, 892]

Giải thích

  • Danh sách các chuỗi được xác định và hiển thị trên bảng điều khiển.

  • Danh sách được sắp xếp bằng phương pháp sắp xếp và được hiển thị trên bảng điều khiển.

  • Phương thức "map" được sử dụng để chuyển đổi tất cả các phần tử trong danh sách thành một chuỗi.

  • Điều này được gán cho một biến

  • Tối đa các phần tử trong danh sách được tìm thấy và gán cho một biến.

  • Phương thức sắp xếp được sử dụng để sắp xếp danh sách và khóa là hàm lambda với phần căn trái.

  • Điều này được gán cho một kết quả.

  • Điều này được hiển thị dưới dạng đầu ra trên bảng điều khiển.