이터레이터(iterator) 메모리 효율성과 속도 스트리밍 처리 대규모 데이터 다루기
이터레이터(iterator)를 잘 다루는 것은 데이터 분석에서 상당히 큰 활용 가치를 가집니다. 단순히 반복문을 효율적으로 돌리는 차원을 넘어서, 메모리 효율성과 속도, 스트리밍 처리, 대규모 데이터 다루기 같은 실무적인 문제 해결에 직접 연결되기 때문입니다.🔍 왜 이터레이터가 데이터 분석에서 중요한가?항목설명이터레이터 사용 시 장점메모리 효율성CSV, 로그 파일, 데이터베이스 쿼리 결과는 수십 GB 이상일 수 있음readline(), yield, itertools 등을 쓰면 전체를 메모리에 올리지 않아도 처리 가능스트리밍 처리실시간 로그, IoT 데이터, Kafka 등이터레이터는 순차적 처리에 최적화되어 있어 스트리밍 분석에 적합지연 평가(lazy evaluation)NumPy, Pandas는 eag..
2025. 7. 3.
.format() 포멧 python 파이썬 print 프린트
🔍 .format()의 인덱스 기반 자리 표시자print("{0:>2} X {1:>2} = {2:>2}".format(dan, n, dan * n))여기서 .format()은 **전달된 값의 위치(순서)**에 따라 중괄호 {} 자리에 대응시킵니다.🔢 정리해보면:자리 표시자의미실제 값{0:>2}첫 번째 인자 dan을 오른쪽 정렬(>), 2자리 폭(:2)예: 3 → " 3"{1:>2}두 번째 인자 n을 오른쪽 정렬예: 7 → " 7"{2:>2}세 번째 인자 dan * n을 오른쪽 정렬예: 21 → "21" 즉, .format(dan, n, dan * n) → 0, 1, 2 순서대로 자리 표시자에 대응됩니다.🧠 비유로 설명.format()은 마치 다음과 같습니다:args = [dan, n, dan * ..
2025. 6. 19.
얕은복사 깊은복사 참조변수 사본전달 원본전달 shallow copy deep copy
🧠 핵심 비유: 복사는 "노트 복사"다!📄 얕은 복사: "노트의 표지와 차례를 복사하지만, 안에 낀 포스트잇은 원본과 공유"📚 깊은 복사: "노트뿐 아니라 안의 포스트잇, 메모지, 첨부자료까지 전부 새로 복사"📦 구조 예시로 보기original = [1, 2, [3, 4]]복사 종류설명copy.copy(original)리스트만 새로 만들고, 내부의 [3, 4]는 공유copy.deepcopy(original)리스트도 새로, 내부의 [3, 4]도 새로 복사 🔍 차이 정리표 항목얕은 복사 (copy.copy)깊은 복사 (copy.deepcopy)복사 대상가장 바깥쪽 객체만 새로 만듦모든 내부 객체까지 새로 만듦내부 변경 영향원본과 복사본에 모두 영향복사본만 변경됨속도빠름느림메모리 사용적음많음사용 시기..
2025. 6. 18.