파이썬에서는 딕셔너리를 값에 따라 여러 개의 딕셔너리로 분할할 수 있습니다. 이는 딕셔너리의 데이터를 특정 기준에 따라 그룹화하고자 할 때 유용합니다. 다음은 이를 달성하는 방법에 대한 단계별 튜토리얼입니다.
단계 1: 딕셔너리 생성하기
먼저, 이 튜토리얼 전체에서 사용할 샘플 딕셔너리를 생성해보겠습니다. 이 딕셔너리는 값에 따라 분할하는 데 사용될 키-값 쌍을 포함할 것입니다.
my_dict = {
'apple': 10,
'banana': 12,
'orange': 9,
'grape': 10,
'kiwi': 12,
'pineapple': 9
}
단계 2: 각 값에 대한 빈 딕셔너리 초기화하기
다음으로, 원래의 딕셔너리에 있는 고유한 값마다 빈 딕셔너리를 초기화해야 합니다. 이를 위해 set() 함수를 사용하여 딕셔너리에서 고유한 값을 얻을 것입니다.
unique_values = set(my_dict.values())
split_dicts = {value: {} for value in unique_values}
이 예제에서 split_dicts 딕셔너리는 my_dict에서 고유한 값들을 키로, 그에 해당하는 빈 딕셔너리들을 값으로 갖게 됩니다.
단계 3: 원래의 딕셔너리 순회하기
이제, 원래의 딕셔너리를 순회하고 각 키-값 쌍을 해당 값에 따라 적절한 분할된 딕셔너리에 할당해야 합니다.
for key, value in my_dict.items():
split_dicts[value][key] = value
이 코드는 키-값 쌍을 해당 값에 따라 분할된 딕셔너리에 할당합니다.
단계 4: 분할된 딕셔너리 출력하기
마지막으로, 각 분할된 딕셔너리를 출력하여 결과를 확인할 수 있습니다.
for value, split_dict in split_dicts.items():
print(f"값이 {value}인 딕셔너리: {split_dict}")
이 코드는 각 분할된 딕셔너리와 해당하는 값과 함께 따로 출력합니다.
전체 예제
my_dict = {
'apple': 10,
'banana': 12,
'orange': 9,
'grape': 10,
'kiwi': 12,
'pineapple': 9
}
unique_values = set(my_dict.values())
split_dicts = {value: {} for value in unique_values}
for key, value in my_dict.items():
split_dicts[value][key] = value
for value, split_dict in split_dicts.items():
print(f"값이 {value}인 딕셔너리: {split_dict}")
출력
위 코드의 출력은 다음과 같습니다:
값이 10인 딕셔너리: {'apple': 10, 'grape': 10}
값이 12인 딕셔너리: {'banana': 12, 'kiwi': 12}
값이 9인 딕셔너리: {'orange': 9, 'pineapple': 9}
원래의 딕셔너리가 값에 따라 세 개의 별도 딕셔너리로 분할되었습니다. 각 분할된 딕셔너리는 원래의 딕셔너리와 일치하는 특정 값에 해당하는 키와 값들을 포함합니다.
그것으로 끝났습니다! 파이썬 딕셔너리를 값에 따라 여러 개의 딕셔너리로 분할하는 데 성공했습니다.