PHpullh

STATIC LEARNING LIBRARY

Python 학습 예제

200개 예제를 개별 HTML 문서로 제공합니다. 검색엔진과 공유 링크에서 각 주제를 바로 열 수 있습니다.

Python

Hello World

가상환경 설정

Python 프로젝트마다 독립된 패키지 환경을 만드는 venv 모듈 사용법입니다. 시스템 Python을 오염시키지 않고 프로젝트별 의존성을 관리할 수 있습니다.

Python

기초 문법

OrderedDict

OrderedDict는 삽입 순서를 보장하며, 순서 관련 추가 기능을 제공합니다. Python 3.7+에서 일반 dict도 순서를 보장하지만 차이점이 있습니다.

Python

함수

Python

객체지향

metaclass 기초

메타클래스는 "클래스의 클래스"로, 클래스 생성 과정을 커스터마이즈합니다. type을 상속하여 __new____init_subclass__를 오버라이드하면 클래스 생성 시 자동 검증, 등록, 변형이 가능합니다.

Protocol — 구조적 서브타이핑

typing.Protocol은 Go의 인터페이스처럼 구조적 서브타이핑(덕 타이핑의 정적 버전)을 지원합니다. 클래스가 명시적으로 상속하지 않아도, 필요한 메서드와 속성만 가지면 해당 프로토콜을 만족합니다.

믹스인 패턴

믹스인은 다중 상속으로 클래스에 특정 기능을 추가하는 패턴입니다. 단일 책임 원칙을 유지하면서 기능을 조합합니다.

전략 패턴

전략 패턴으로 알고리즘을 캡슐화하고 런타임에 교체할 수 있게 합니다. Python에서는 함수를 전략으로 사용할 수 있습니다.

Python

컬렉션

Python

함수형

Python

비동기

Python

예외처리

Python

파일/IO

Python

테스트

Python

성능

PyPy

PyPy는 JIT 컴파일러를 내장한 Python 인터프리터로, CPython 대비 수배~수십배 빠른 성능을 제공합니다.

Python

디자인패턴

Pydantic 모델 검증

Pydantic은 Python 타입 힌트를 활용해 런타임 데이터 검증을 자동화합니다. API 요청/응답, 설정 파일, 외부 데이터 파싱에서 타입 안전성을 보장하며, FastAPI의 핵심 기반 라이브러리입니다.