Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python – 튜플을 딕셔너리 키로 연결하는 방법

개요

파이썬에서 튜플을 딕셔너리의 키로 연결해야 하는 경우, join() 메서드와 반복문을 활용하면 간단하게 처리할 수 있습니다. 문자열 요소들로 구성된 튜플을 공백을 기준으로 하나의 문자열로 결합하여 딕셔너리의 키로 사용하는 방법을 예제와 함께 살펴보겠습니다.

예제

아래는 튜플을 딕셔너리 키에 연결하는 과정을 보여주는 예제입니다.

my_list = [(("pyt", "is", "best"), 10), (("pyt", "cool"), 1), (("pyt", "is", "fun"), 15)]

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

my_result = {}
for sub_list in my_list:

   my_result[" ".join(sub_list[0])] = sub_list[1]

print("The result is :")
print(my_result)

출력 결과

The list is :
[(('pyt', 'is', 'best'), 10), (('pyt', 'cool'), 1), (('pyt', 'is', 'fun'), 15)]
The result is :
{'pyt is best': 10, 'pyt cool': 1, 'pyt is fun': 15}

코드 설명

  • 튜플과 정수 값을 요소로 가지는 리스트를 정의한 뒤 콘솔에 출력합니다.

  • 결과를 저장할 빈 딕셔너리 my_result를 생성합니다.

  • for 반복문으로 리스트를 순회하면서, 각 요소의 첫 번째 부분인 문자열 튜플에 " ".join()을 적용해 공백으로 구분된 하나의 문자열로 만듭니다.

  • 이렇게 생성된 문자열이 딕셔너리의 키가 되고, 해당 튜플의 두 번째 요소인 정수 값이 그 키의 값으로 저장됩니다.

  • 최종적으로 완성된 딕셔너리를 콘솔에 출력합니다.

딕셔너리 컴프리헨션으로 더 간결하게

위 코드는 딕셔너리 컴프리헨션을 사용하면 한 줄로도 작성할 수 있습니다.

my_result = {" ".join(sub[0]): sub[1] for sub in my_list}

두 방식 모두 동일한 결과를 반환하지만, 컴프리헨션을 활용하면 코드가 더 짧고 파이썬다운 스타일이 됩니다. 상황에 따라 가독성이 좋은 방식을 선택하면 됩니다.