파이썬 딕셔너리(Dictionary)

2025. 5. 28. 00:04Python

# 🧠 파이썬 딕셔너리(Dictionary) 완전 정복 + () [] {} 차이 정리

## ✅ 1. 질문 요약

| 핵심 키워드 | 설명 |
|-------------|------|
| Dictionary | 키-값 쌍으로 데이터를 저장하는 자료형 |
| 리스트       | 순서가 있는 데이터 집합, 대괄호 `[]` 사용 |
| 괄호 차이    | `{}`는 딕셔너리, `[]`는 리스트, `()`는 튜플이나 우선순위 표현에 사용 |

---

## ✔ 2. 딕셔너리란?

딕셔너리는 **key(키)**와 **value(값)**가 쌍을 이루는 데이터 구조입니다.

```python
a_dict = {
  'name': 'bob',
  'age': 27,
  'friend': ['영희', '철수']
}
  • 'name'은 key → 'bob'은 value
  • 'friend'는 key → 리스트 형태의 value ['영희', '철수']

❓ 예시 코드 1

print(a_dict['friend'][1])

출력값: 철수

이유:
a_dict['friend'] → ['영희', '철수']
['영희', '철수'][1] → 철수


✔ 3. 딕셔너리에 값 추가하기

a_dict['height'] = 180
print(a_dict)

➡ 'height'라는 key가 없으면 새로 추가됨
결과:

{'name': 'bob', 'age': 27, 'friend': ['영희', '철수'], 'height': 180}

✔ 4. key 존재 여부 확인 (in 사용)

result = 'height' in a_dict
print(result)

➡ 'height' key가 존재하면 True, 없으면 False

예시:

a_dict = {'name': 'bob', 'age': 27}
print('height' in a_dict)  # False

🚨 5. 문법 오류 주의

❌ 아래는 문법 오류임

a_dict = {'name': 'bob', 'age': 27: 'friend': ['영희', '철수']}  # ❌

문제점: 27: 이런 식으로 key-value 형식이 깨져 있음
고쳐야 함 →

a_dict = {'name': 'bob', 'age': 27, 'friend': ['영희', '철수']}

🔍 6. () [] {} 언제 쓰는지 헷갈릴 때 참고!

기호 용도 예시 특징

{} 딕셔너리, 집합(set) {'name': 'bob'} 키-값 저장 or 유일한 값 집합
[] 리스트, 인덱싱 [1, 2, 3], a[0] 순서 있는 자료, 수정 가능
() 튜플, 함수 호출, 우선순위 (1, 2), print() 순서 있음, 수정 불가 (immutable)

🔥 7. 실전 팁

✔ 리스트 안에 또 다른 리스트나 딕셔너리가 들어갈 수 있다
✔ dict['key'][index] → 리스트 내부 요소 접근 가능
✔ key in dict → 존재 여부 확인


📌 마무리 요약

  • 딕셔너리는 {} 안에 "key": value 구조
  • []는 리스트 → 순서 중요, 인덱싱으로 접근
  • ()는 튜플, 함수 실행 또는 수학적 우선순위 지정
  • in은 딕셔너리 key의 존재 유무를 확인하는 데 사용

💡 헷갈릴 땐 이렇게 생각하기!

# 딕셔너리 생성
info = {'이름': '현진', '취미': ['코딩', '그림']}
print(info['취미'][0])  # 코딩

# key 존재 여부 체크
if '나이' in info:
    print('나이가 있습니다.')
else:
    print('나이가 없습니다.')

위 내용을 `.md` 파일로 저장하고 싶으면 메모장에 붙여넣은 뒤 `파일명.md`로 저장하면 됩니다.

필요하다면 `.md` 파일 직접 생성도 도와드릴 수 있어요!

 

result= a_dict['age']=27이라는 값이 나옴