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

절대 차이의 빈도로 튜플을 정렬하는 Python 프로그램

<시간/>

절대차의 빈도로 튜플을 정렬해야 하는 경우 람다 함수, 'abs' 방법 및 'sorted' 방법이 사용됩니다.

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

my_list = [(11, 26), (21, 33), (90, 11), (26, 21), (32, 18), (25, 37)]

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

my_diff_list = [abs(x - y) for x, y in my_list]

my_result = sorted(my_list, key = lambda sub: my_diff_list.count(abs(sub[0] - sub[1])))

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

출력

The list is :
[(11, 26), (21, 33), (90, 11), (26, 21), (32, 18), (25, 37)]
The resultant list is :
[(11, 26), (90, 11), (26, 21), (32, 18), (21, 33), (25, 37)]

설명

  • 튜플 목록이 정의되어 콘솔에 표시됩니다.

  • 목록 이해는 목록을 반복하고 연속 요소 간의 절대 차이를 얻는 데 사용됩니다.

  • 리스트로 변환되어 변수에 저장됩니다.

  • 리스트의 요소에 대해 다시 'sorted' 방식을 사용하며, 키는 'lambda'로 지정하고 연속된 요소 간의 절대 차이의 개수를 결정합니다.

  • 이것은 변수에 할당되고 콘솔에 표시됩니다.