Python/Python 예제 코드
대응하는 두 리스트를 정렬하는 Python 예제코드
webnautes
2023. 12. 12. 22:22
반응형
리스트 list1을 내림차순으로 정렬하는 동안, 리스트 list2와의 대응 관계를 유지하는 예제 코드입니다. 예를 들어, list1의 2와 list2의 d가 정렬 후에도 같은 인덱스를 갖게됩니다.
정렬전 - list1의 2와 list2의 ‘d’의 인덱스가 똑같이 0입니다.
[2, 4, 1, 3]
['d', 'c', 'b', 'a']
정렬후 - 정렬 후에도 list1의 2와 list2의 ‘d’의 인덱스가 똑같이 2입니다.
[4, 3, 2, 1]
['c', 'a', 'd', 'b']
2023. 12. 3 최초작성
# 2개의 리스트를 선언합니다. list1 = [2, 4, 1, 3] list2 = ['d', 'c', 'b', 'a'] # zip 함수를 사용하여 두 리스트의 항목을 튜플로 묶습니다. paired_list = list(zip(list1, list2)) # paired_list를 첫 번째 요소를 기준으로 내림차순 정렬합니다. paired_list_sorted = sorted(paired_list, reverse=True) # 정렬된 튜플 리스트를 다시 두 개의 리스트로 분리합니다. list1_sorted, list2_sorted = zip(*paired_list_sorted) # 분리된 리스트를 다시 리스트 형태로 변환합니다. list1_sorted = list(list1_sorted) list2_sorted = list(list2_sorted) # 결과를 출력합니다. print(list1_sorted) print(list2_sorted) |
실행하면 첫번째 리스트를 내림차순으로 정렬하면서 두번째 리스트도 대응 관계를 유지하도록 정렬했습니다.
[4, 3, 2, 1]
['c', 'a', 'd', 'b']
반응형