Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python – 숫자를 기준으로 목록 항목 정렬

<시간/>

리스트의 요소를 자릿수를 기준으로 정렬해야 하는 경우 'max', 'max' 방법을 사용합니다. 또한 'sorted' 방법, 'lambda' 함수 및 'ljust'도 사용할 것입니다.

예시

아래는 동일한 데모입니다 -

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)

출력

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]

설명

  • 문자열 목록이 정의되고 콘솔에 표시됩니다.

  • 목록은 정렬 방법을 사용하여 정렬되며 콘솔에 표시됩니다.

  • 'map' 메서드는 목록의 모든 요소를 ​​문자열로 변환하는 데 사용됩니다.

  • 이것은 변수에 할당됩니다.

  • 목록에 있는 요소의 최대값을 찾아 변수에 할당합니다.

  • sorted 메소드는 목록을 정렬하는 데 사용되며 키는 왼쪽 정렬이 있는 람다 함수입니다.

  • 결과에 할당됩니다.

  • 이것은 콘솔에 출력으로 표시됩니다.