--- id: python-dictionaries title: "Python Dictionaries" category: "Programming_Language" status: "draft" verification_status: "conceptual" canonical_id: "" aliases: ["파이썬 딕셔너리"] duplicate_of: "" source_trust_level: "B" confidence_score: 0.9 created_at: 2026-07-04 updated_at: 2026-07-04 review_reason: "" merge_history: [] tags: ["python", "programming", "w3schools", "dictionaries"] raw_sources: ["https://www.w3schools.com/python/python_dictionaries.asp"] applied_in: [] github_commit: "" --- # [[Python Dictionaries]] ## 🎯 한 줄 통찰 (One-line insight) A dictionary stores key:value pairs — ordered since Python 3.7, changeable, no duplicate keys — and assigning to an existing key silently OVERWRITES it rather than raising an error or creating a duplicate. [S1] ## 🧠 핵심 개념 (Core concepts) - **Dictionary** — stores data in key:value pairs; one of 4 built-in collection types. [S1] - **Ordered (3.7+)** — item order is defined and persists; prior to 3.7, dictionaries were unordered. [S1] - **Changeable** — items can be changed, added, removed after creation. [S1] - **No duplicate keys** — repeating a key in a literal overwrites the earlier value. [S1] - **`dict()` constructor** — alternative creation syntax: `dict(name="John", age=36)`. [S1] ## 🧩 추출된 패턴 (Extracted patterns) - **Silent overwrite on duplicate key** — `{"year": 1964, "year": 2020}` doesn't error or keep both; the later value simply wins — a subtle footgun if a dict literal is built programmatically with accidental key collisions. [S1] ## 📖 세부 내용 (Details) - Basic creation: `thisdict = {"brand": "Ford", "model": "Mustang", "year": 1964}`. [S1] - Access by key: `print(thisdict["brand"])`. [S1] - Duplicate key overwrite: `{"year": 1964, "year": 2020}` → keeps only 2020. [S1] - Mixed value types: `{"brand": "Ford", "electric": False, "year": 1964, "colors": ["red","white","blue"]}`. [S1] - Constructor: `thisdict = dict(name="John", age=36, country="Norway")`. [S1] ## ⚖️ 모순 및 업데이트 (Contradictions & updates) - **순서 보장은 버전 종속적**: Python 3.7+부터 순서 보장, 이전 버전은 무순서. [S1] ## 🛠️ 적용 사례 (Applied in summary) 현재 발견된 실제 적용 사례가 없습니다 — 이후 Access/Change/Add/Remove/Loop/Copy/Nested/Methods 챕터의 기초 개론이다. [S1] ## 💻 코드 패턴 (Code patterns) Basic dictionary creation and access (Python): ```python thisdict = {"brand": "Ford", "model": "Mustang", "year": 1964} print(thisdict["brand"]) ``` ## ✅ 검증 상태 및 신뢰도 - **상태:** draft - **검증 단계:** conceptual - **출처 신뢰도:** B (W3Schools — widely used educational reference, not a primary standards body) - **신뢰 점수:** 0.90 - **중복 검사 결과:** 신규 생성 (New discovery) ## 🔗 지식 그래프 (Knowledge Graph) - **상위/루트:** [[Python Tutorial]] - **관련 개념:** [[Python Lists]], [[Python Sets]], [[Python Dictionaries Access]] - **참조 맥락:** 4대 컬렉션 타입 중 이름-값 매핑이 필요할 때 사용하는 타입. ## 📚 출처 (Sources) - [S1] W3Schools — Python Dictionaries — https://www.w3schools.com/python/python_dictionaries.asp ## 📝 변경 이력 (Change history) - 2026-07-04: Initial draft synthesized from the W3Schools "Python Dictionaries" page (Astra wiki-curation, P-Reinforce v3.1 format).