728x90

딕셔너리 (dictionary)

- 파이썬의 자료구조 형태중 하나
- 기호는 중괄호 {} 로 쓰여지며 내부의 값은 콤마(,)로 구분되어 진다.
- key와 value의 맵핑은 콜론 : 으로 지어준다!
- 딕셔너리는 단어 그대로 해석하면 사전 이라는 뜻
- people이라는 단어는 사람을 연상시키고, baseball이라는 단어는 야구에 부합된다!
- 딕셔너리의 타입은 변할 수 없는 key와 변할 수도 있는 value로 맵핑(한쌍)되어 있다!

***순서가 없다!!!!!!!!!!(인덱스x)

딕셔너리 타입
리스트 타입

딕셔너리에 값 추가
딕셔너리명[key] = value

key가 이미 있다면 value를 갱신 해줄 수 있고,
key가 없다면 value를 추가! 해줄 수 있다

딕셔너리 예제

실행코드

# 딕셔너리 예제
# 주어진 데이터에서 과목 별 합을 구하고, 새로운 딕셔너리로 구성해보자!!
score_dic = {'홍길동':{'수학':99,'영어':80,'국어':75},
             '김미정':{'영어':67,'국어':87,'수학':55},
             '정수진':{'수학':67,'국어':41,'영어':23}}

math_num = 0
eng_num = 0
kor_num = 0

# 1. values() 각 과목별로 접근
for dic_values in score_dic.values():
    # 2. 접근한 value들의 합계
    # 3. 누적된 값을 저장 할 공간을 할당 (1번에다가 누적해야함!!)
    math_num += dic_values.get('수학')
    eng_num += dic_values.get('영어')
    kor_num += dic_values.get('국어')
    
# 4. 리스트화 시켜서 인덱스로 접근하도록 만들어주기!
scList = list(dic_values.keys())
# 5. 예쁘게 프린트~(딕셔너리로 생성해주기! 단 내부의 값은 접근했던걸로)
{scList[0]:math_num, scList[1]:kor_num, scList[2]:eng_num}

 

728x90

'Study > Python' 카테고리의 다른 글

Python기초 8일차 <Module, Numpy>  (0) 2022.10.07
Python기초 7일차 <함수>  (0) 2022.10.07
Python기초 5일차 <반복문>  (0) 2022.10.05
Python기초 4일차 <리스트>  (1) 2022.10.04
Python기초 3일차 <조건문>  (0) 2022.10.04
복사했습니다!