본문 바로가기

728x90
반응형

Python

(36)
Python 기반 주식 데이터 분석 오픈소스, Finance 프로젝트 완전 해부 주식 시장을 분석하고 예측하기 위해 데이터와 알고리즘을 활용하는 것은 더 이상 전문가들만의 영역이 아닙니다. 파이썬(Python)은 데이터 분석과 머신러닝의 대표 언어로 자리 잡으며, 개인 투자자와 개발자들도 손쉽게 금융 데이터를 다룰 수 있는 환경을 제공합니다.이 글에서는 파이썬 기반의 오픈소스 프로젝트인 Finance를 소개합니다.Finance는 주식 데이터를 수집, 분석, 예측, 전략 시뮬레이션까지 통합적으로 수행할 수 있는 150개 이상의 파이썬 프로그램 모음입니다. 이 글을 통해 프로젝트의 구조, 각 기능의 역할, 그리고 실제 활용 방법을 단계별로 살펴보겠습니다.Finance란 무엇인가?Finance는 주식 시장 데이터를 다루는 파이썬 오픈소스 프로젝트로, 데이터 수집부터 분석, 예측, 포트폴리..
Python 3.14.0 정식 릴리스: Free-threaded Python 시대의 본격 개막 Python이 또 한 단계 진화했다.2025년 10월 7일, Python 3.14.0 정식 버전이 공개되었다. 이번 릴리스는 단순한 기능 추가를 넘어, Python 언어의 내부 구조와 실행 모델에 커다란 변화를 가져온다. 특히 Free-threaded Python의 공식 지원은 멀티코어 환경에서의 병렬 처리를 획기적으로 향상시킬 수 있는 핵심 변화로 평가받고 있다.이번 블로그에서는 Python 3.14.0의 주요 개선 사항, 새로운 기능, 개발자 관점에서 알아야 할 변경점, 그리고 업데이트 시 주의할 점까지 정리해본다.1. Python 3.14.0, 무엇이 달라졌나Python 3.14.0은 3.13 버전 이후 약 1년 만에 발표된 안정(stable) 버전으로, 전반적인 성능 최적화와 새로운 기능의 정식 ..
파이썬의 진짜 초능력: 왜 ‘점진성(Graduality)’이 답인가? 파이썬은 1990년대 초에 등장해 지금까지 수많은 개발자들이 선택하는 언어로 성장했습니다. 그런데 단순히 문법이 쉽다는 이유로만 여전히 살아남고 있는 걸까요? PyCon UK 2025에서 Hynek Schlawack는 파이썬의 진짜 힘은 ‘점진성(Graduality)’ 에 있다고 말했습니다. 이번 글에서는 파이썬 2에서 3으로 넘어가는 전환 과정, 파이썬이 살아남을 수 있었던 이유, 그리고 커뮤니티가 직면한 과제까지 정리해 보겠습니다.Python 2에서 3으로의 전환: 아픈 성장통파이썬 3는 2008년에 처음 나왔지만, 바로 대중적으로 쓰이진 않았습니다. 이유는 간단합니다. 변화가 컸기 때문입니다.문자열 처리: 파이썬 3는 문자열 기본을 바이트에서 유니코드로 전환했습니다. 개발자 입장에서는 국제화에 강력..
Python 3.14 Free-Threaded 빌드: asyncio의 진정한 병렬성 구현 Python을 사용할 때 흔히 듣던 말 중 하나는 “멀티스레딩 성능이 제한적이다”라는 것이었습니다. 그 이유는 바로 전역 인터프리터 잠금(GIL, Global Interpreter Lock) 때문이었습니다. 그러나 Python 3.14의 free-threaded 빌드는 이러한 제약을 제거하며, asyncio에 진정한 병렬성을 가능하게 했습니다.이번 글에서는 Python 3.14 free-threaded 빌드에서 asyncio가 어떻게 달라졌는지, 주요 변경 사항과 성능 향상 결과를 정리하여 살펴보겠습니다.1. GIL 제거: 병렬성의 시작Python 멀티스레딩의 가장 큰 제약은 GIL이었습니다. 기존에는 한 번에 하나의 스레드만 Python 코드를 실행할 수 있었기 때문에 CPU 코어를 온전히 활용하기 어..
파이썬 Async, 왜 아직 대세가 되지 못했을까? 그리고 다가올 변화 파이썬을 조금이라도 써본 개발자라면 asyncio라는 단어를 들어봤을 겁니다. 비동기 프로그래밍은 I/O(입출력) 작업에서 대기 시간을 줄여 더 효율적인 코드를 작성할 수 있게 해주죠. 하지만 놀라운 성능 향상을 제공할 수 있음에도 불구하고, 아직 많은 개발자들에게는 낯설고 부담스러운 영역으로 남아 있습니다.이번 글에서는 파이썬 async가 왜 아직 주류가 되지 못했는지, 그리고 다가올 파이썬의 변화가 어떤 의미를 가지는지 차근차근 살펴보겠습니다.1. 머리가 복잡해지는 이유: 인지적 부하동기 코드는 위에서 아래로 차례대로 읽는 책과 같습니다. 직관적이고 이해하기 쉽죠.하지만 비동기 코드는 다릅니다. 마치 요리사가 파스타를 만들며 동시에 소스를 준비하고, 또 다른 한쪽에서는 채소를 다듬는 것과 같습니다. ..
Python 패키징의 새로운 시대: pyx로 속도·보안·GPU 최적화를 한 번에 – Astral이 제시하는 Python 생태계의 다음 단계 Python 개발 환경에서 가장 답답한 순간 중 하나는 패키지 설치 속도와 호환성 문제입니다. 특히 PyTorch나 CUDA 같은 대형 라이브러리를 다루다 보면, 빌드가 깨지거나 하드웨어 환경에 맞는 버전을 찾는 데만 상당한 시간이 소요되는 경우가 많습니다.이러한 문제를 해결하기 위해 uv 개발팀이 새로운 솔루션을 선보였습니다. 바로 pyx입니다.pyx는 기존 PyPI나 PyTorch 패키지 설치 속도를 최대 10배까지 향상시키고, GPU 환경 인식, 보안 강화, 사설 패키지 호스팅까지 지원하는 Python 네이티브 패키지 레지스트리입니다.이번 글에서는 pyx의 개념과 특징, 장점을 정리하고 Python 생태계에 가져올 변화를 살펴보겠습니다.1. pyx란 무엇인가pyx는 Astral이 개발한 Python..
Flake8, isort, Black을 대체할 단 하나의 선택 – 초고속 Python 린터 Ruff 소개 Python 프로젝트를 진행하면서 코드 스타일이나 품질 관리를 위해 린터(linter)와 포맷터(formatter)를 사용하는 일은 이제 필수입니다. 문제는, 이런 도구들이 점점 늘어나고 설정도 복잡해진다는 점입니다. Flake8, isort, Black을 따로 설정하고 관리하느라 시간을 낭비하고 있다면, 이 글이 그 고민을 덜어줄 수 있습니다.이 글에서는 Rust로 개발된 초고속 Python 코드 품질 도구 Ruff를 소개합니다. Flake8, isort, Black의 기능을 하나로 통합해 코드 검사와 포맷팅을 단일 도구로 처리할 수 있고, 속도도 월등히 빠릅니다. 실제로 Airflow, FastAPI, Pandas 같은 유명 오픈 소스에서도 Ruff를 사용하고 있습니다.이 글을 통해 Ruff가 어떤 ..
Django 5.1의 대격변: URL 쿼리 파라미터를 더 쉽게 처리하는 {% querystring %} 템플릿 태그 Django 개발자들의 오랜 고민, 드디어 해결되다웹 애플리케이션을 개발할 때 필터, 검색, 페이지네이션 기능을 구현하며 가장 자주 겪는 문제가 있다. 바로 URL 쿼리 파라미터를 유지하면서 일부만 수정하거나 추가하는 것이다. 이처럼 단순해 보이는 작업이 Django 템플릿 내에서는 꽤나 번거롭고 비효율적인 코드 작성을 요구해왔다.하지만 Django 5.1의 새로운 기능, {% querystring %} 템플릿 태그가 이러한 문제를 해결해준다. 이제 템플릿에서 URL 쿼리 문자열을 더욱 직관적이고 간단하게 다룰 수 있게 된 것이다. 이번 블로그에서는 이 기능이 어떤 문제를 해결하며, 어떻게 사용하는지, 그리고 실무에서 어떤 장점을 가지는지 소개한다.Django 템플릿의 오래된 문제제품 목록을 보여주는 페..

728x90
반응형