Python 코드는 어떻게 실행될까
CPython이 소스 코드를 AST와 code object·bytecode로 컴파일해 실행하는 흐름과 .pyc 캐시의 정확한 역할을 설명합니다.
문법, 라이브러리, 데이터 처리, 환경 관리
문서 0건
문서 25건
이 카테고리에는 아직 문서가 없습니다.
CPython이 소스 코드를 AST와 code object·bytecode로 컴파일해 실행하는 흐름과 .pyc 캐시의 정확한 역할을 설명합니다.
async·await·asyncio.gather와 httpx.AsyncClient로 여러 공공 API를 동시에 호출하고, 일부 요청이 실패해도 나머지 결과는 살리는 수집기를 만듭니다.
deque, defaultdict, Counter, OrderedDict, heapq, bisect를 큐·그룹핑·빈도·우선순위·정렬 경계 작업에 맞게 선택합니다.
list·dict·set comprehension으로 변환과 필터를 표현하고, 일반 반복문이 더 읽기 좋은 경계를 데이터 예제로 설명합니다.
I/O-bound와 CPU-bound 작업을 구분하고, CPython GIL이 threading과 multiprocessing에 미치는 영향을 실측 코드로 비교해 도구 선택 기준을 정리합니다.
if·elif·else와 Truthy·Falsy, and·or 단락 평가, ==·is·in을 데이터 검증 예제로 정확히 구분합니다.
macOS와 Windows에서 프로젝트별 가상환경을 만들고 pip·requirements·VS Code 인터프리터를 일치시키는 방법을 설명합니다.
직원·판매 데이터를 검증하고 컴프리헨션, sorted, Counter, defaultdict, 제너레이터로 필터링·집계하는 재현 가능한 종합 실습입니다.
클로저가 외부 변수를 기억하는 원리와 nonlocal, 데코레이터로 실행 시간 측정·재시도를 분리하는 방법, functools.wraps의 필요성을 정리합니다.
API 키·DB 비밀번호를 코드에서 분리해 .env로 관리하고, python-dotenv·os.getenv와 타입 변환 함정, Git 노출 방지 방법을 정리합니다.
try·except·else·finally의 실행 시점을 구분하고, raise와 raise from, 파이프라인에 맞는 사용자 정의 예외로 실패 경계를 설계합니다.
pathlib로 경로를 다루고 csv·json 표준 모듈과 pandas+pyarrow로 세 파일 형식을 안전하게 읽고 저장합니다.
함수 정의와 반환부터 다섯 가지 매개변수, 언패킹, 기본 인자 함정, 일급 객체와 partial까지 데이터 분석 예제로 익힙니다.
iterable·iterator·generator의 차이와 yield의 중단·재개, 일회성 지연 평가, itertools와 안전한 CSV 스트리밍 파이프라인을 설명합니다.
순서·중복·변경 가능성·접근 방식으로 list, tuple, set, dict를 비교하고 데이터에 맞는 구조를 고르는 기준을 설명합니다.
로그 레벨 5단계와 Logger·Handler·Formatter 구조로 콘솔·파일에 서로 다른 형식의 기록을 남기고, logger.exception으로 예외 추적성을 확보합니다.
모듈·패키지·import의 동작과 main guard, 캐시·순환 import 주의점을 익히고 데이터 분석에 맞는 표준 라이브러리를 고릅니다.
Python의 이름·객체·바인딩 모델과 CPython의 참조 횟수·순환 가비지 컬렉션을 입문자 관점에서 설명합니다.
Pydantic v2 BaseModel과 Field로 CSV·API 입력을 실행 시점에 검증·변환하고, ValidationError로 실패 행을 구조화해 다루는 방법을 익힙니다.
분석 파이프라인의 정제 함수를 pytest fixture·예외 테스트·매개변수화로 검증하고 pytest-cov로 커버리지 빈틈을 찾는 방법을 정리합니다.
Ruff로 린트·import 정렬·포맷을 하나로 합치고, pre-commit과 GitHub Actions로 커밋·CI 단계에서 자동으로 검사하는 흐름을 만듭니다.
Python 문자열의 불변성과 Unicode 모델부터 인덱싱·슬라이싱, 정제 메서드, f-string 포맷 지정과 외부 입력의 보안 경계까지 설명합니다.
list·dict 컬렉션 타입부터 Optional·Union·Literal·Any·Callable·Protocol까지 정적 타입 표현을 정리하고 mypy로 실행 전 오류를 찾는 방법을 익힙니다.
for·while 선택부터 enumerate, break·continue·else, zip과 zip_longest의 안전한 사용법까지 데이터 예제로 설명합니다.
데이터를 읽고 정리하고 분석해 전달하는 전 과정에서 Python이 유용한 이유와 다른 도구를 선택할 기준을 설명합니다.