반응형

리스트 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']




반응형

문제 발생시 지나치지 마시고 댓글 남겨주시면 가능한 빨리 답장드립니다.

도움이 되셨다면 토스아이디로 후원해주세요.
https://toss.me/momo2024


제가 쓴 책도 한번 검토해보세요 ^^

+ Recent posts