--- id: python-casting title: "Python Casting" category: "Programming_Language" status: "draft" verification_status: "conceptual" canonical_id: "" aliases: ["int() float() str()", "파이썬 형변환"] 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", "casting"] raw_sources: ["https://www.w3schools.com/python/python_casting.asp"] applied_in: [] github_commit: "" --- # [[Python Casting]] ## 🎯 한 줄 통찰 (One-line insight) Because Python's primitive types are themselves classes, casting is done through constructor function calls (int(), float(), str()) rather than a dedicated cast syntax, and int() truncates rather than rounds. [S1] ## 🧠 핵심 개념 (Core concepts) - **Casting via constructors** — Python is object-oriented and uses classes even for primitive types, so casting means calling a constructor function. [S1] - **`int()`** — builds an integer from an int/float literal (removing decimals) or a string that represents a whole number. [S1] - **`float()`** — builds a float from an int/float/string literal representing a float or integer. [S1] - **`str()`** — builds a string from a wide variety of data types. [S1] ## 🧩 추출된 패턴 (Extracted patterns) - **`int()` truncates, doesn't round** — `int(2.8)` gives `2`, not `3` — casting a float to int discards the decimal portion rather than rounding to the nearest integer. [S1] ## 📖 세부 내용 (Details) - Integer casting: `x = int(1); y = int(2.8) # 2; z = int("3")`. [S1] - Float casting: `x = float(1); y = float(2.8); z = float("3"); w = float("4.2")`. [S1] - String casting: `x = str("s1"); y = str(2); z = str(3.0)`. [S1] ## ⚖️ 모순 및 업데이트 (Contradictions & updates) 소스에서 모순되는 정보는 발견되지 않음. ## 🛠️ 적용 사례 (Applied in summary) 현재 발견된 실제 적용 사례가 없습니다 — Numbers/Variables 챕터에서 이미 예고된 캐스팅 문법이 여기서 상세화된다. [S1] ## 💻 코드 패턴 (Code patterns) int() truncates decimals (Python): ```python x = int(1) # x will be 1 y = int(2.8) # y will be 2 (truncated, not rounded) z = int("3") # z will be 3 ``` ## ✅ 검증 상태 및 신뢰도 - **상태:** draft - **검증 단계:** conceptual - **출처 신뢰도:** B (W3Schools — widely used educational reference, not a primary standards body) - **신뢰 점수:** 0.90 - **중복 검사 결과:** 신규 생성 (New discovery) ## 🔗 지식 그래프 (Knowledge Graph) - **상위/루트:** [[Python Tutorial]] - **관련 개념:** [[Python Variables]], [[Python Numbers]], [[Python Data Types]] - **참조 맥락:** 타입 간 명시적 변환이 필요할 때 사용 — int() 절삭 동작에 유의. ## 📚 출처 (Sources) - [S1] W3Schools — Python Casting — https://www.w3schools.com/python/python_casting.asp ## 📝 변경 이력 (Change history) - 2026-07-04: Initial draft synthesized from the W3Schools "Python Casting" page (Astra wiki-curation, P-Reinforce v3.1 format).