사전(Dict)에 리스트를 포함하는 예제를 작성해보겠습니다. 사전 내에 리스트를 값으로 가지는 경우, 각 키(Key)는 해당 리스트에 접근하는 데 사용될 수 있습니다.
예제:
# 사전에 리스트를 포함하는 예제
student_scores = {
'John': [85, 90, 78],
'Alice': [92, 88, 95],
'Bob': [78, 84, 80]
}
print(student_scores['John']) # John의 성적 리스트에 접근
print(student_scores['Alice']) # Alice의 성적 리스트에 접근
출력 결과:
[85, 90, 78]
[92, 88, 95]
위 예제에서 `student_scores` 사전은 학생들의 이름을 키로 가지며, 각 학생의 성적을 리스트로 값으로 갖습니다. 따라서 특정 학생의 이름을 사용하여 해당 학생의 성적 리스트에 접근할 수 있습니다.
이러한 형태의 효율성에 대한 설명:
사전 내에 리스트를 포함하는 경우, 이러한 구조는 특정 상황에 매우 유용합니다. 몇 가지 효율성 측면에 대해 설명해보겠습니다.
1. 그룹화(Grouping):
사전 내에 리스트를 사용하면 여러 값들을 그룹화하여 저장할 수 있습니다.
위 예제에서 학생들의 성적을 각각 이름별로 그룹화하여 저장했습니다.
2. 데이터 구조 표현:
사전과 리스트의 조합은 복잡한 데이터 구조를 표현하기에 유용합니다.
다차원 데이터를 표현할 때, 사전 내에 리스트를 중첩하여 사용하면 데이터를 더 효과적으로 표현할 수 있습니다.
3. 데이터 업데이트:
사전 내의 리스트는 가변(mutable)이므로 값의 추가, 수정, 삭제가 가능합니다.
이를 활용하여 동적으로 데이터를 업데이트하거나 추가할 수 있습니다.
4. 데이터 탐색:
특정 학생의 성적을 찾을 때, 이름을 키로 사용하여 사전 내의 리스트에 직접 접근할 수 있기 때문에 데이터를 효율적으로 탐색할 수 있습니다. 이는 리스트를 순회하며 값을 찾는 것보다 더 효율적입니다.
단점으로는 리스트 내의 값을 변경하면 해당 사전의 모든 참조에서 변경된 값을 반영한다는 점이 있습니다. 때로는 의도치 않은 결과가 발생할 수 있으므로 주의가 필요합니다. 이러한 점을 고려하여 데이터 구조를 설계하고 활용하는 것이 중요합니다.
'Programming > python' 카테고리의 다른 글
python pass(빈블럭)에 대해서 알아보자 (0) | 2023.07.25 |
---|---|
python의 bulit-in data type(내장 데이터 유형)에 대해서 알아보자 (0) | 2023.07.25 |
python 리스트와 사전형식에 대해서 알아보자 (tuple & dict) (0) | 2023.07.25 |
python 리스트와 튜플에 대한 차이점을 알아보자 (List vs Tuple) (0) | 2023.07.25 |
anaconda 설치 하기 (0) | 2023.07.25 |