728x90
최근 Python 연습할 겸 이것저것 고민하면서, 레포지토리 하나를 셋업했다.이번 연습에서는 Python 프로젝트 관리 도구들을 적용하는 것 또한 목표여서 하나씩 찾아보고 있었는데, 그 중 가상 환경(패키징) 관리 도구로써 Pixi를 접할 수 있었고, 사용 경험이 괜찮은 것 같아서, 이에 대한 소개와 사용하는 방법을 공유하고자 한다. 사용 환경은 다음과 같다.OS : Windows 11CPU : AMD 5600XShell : Bash (Git)추가적으로 Code Quality Watcher로 ruff를 셋업해두어서 pyproject.toml은 사전에 구성되어 있는 환경이다.(ruff는 공부 더 하고 포스팅하는걸로..)Pixi란? Pixi by prefix.devNonepixi.sh Pixi는 자신을 모..
# 목적Python을 사용한 업무를 진행할 때, 대부분의 메소드에 @staticmethod와 @classmethod를 사용하고 있는데, 두 어노테이션이 갖는 의미와 차이점, 사용 방법 등을 정확하게 정리하는 것이 이번 포스팅의 목적이다. 추가로, 업무하면서 두 어노테이션을 쓰다 인스턴스 변수와 클래스 변수를 생각 안하고 짯던 경험이 있어서, 이슈 상황과 차이점 또한 간단히 정리하고자 한다.@staticmethodhttps://docs.python.org/3/library/functions.html#staticmethod Built-in FunctionsThe Python interpreter has a number of functions and types built into it that are alwa..
# 목적업무를 하면서 Dataclass를 컨벤션 중 하나로 사용하고 있었는데, 기존 개발자 분들께서 Dataclass를 왜 사용하셨는지를 이해하는 과정이 필요했다. 이번 포스팅에서 Dataclass의 개념과 장점에 대해서 공부한 내용을 정리하고 공유하고자 한다. 현재 Python 3.7 환경을 사용하고 있어, 3.7 버전을 기준으로 정리했다.# Dataclasses 패키지 Dataclass는 Dataclasses 모듈에서 제공하는 기능이다. Dataclasses 모듈은 3.7 버전에서 공식적으로 추가되고 3.12 버전에서도 관리되는 패키지이다. Dataclasses 모듈은 Dataclass 데코레이터 및 함수를 제공하여, 클래스 선언 시 __init__, __repr__, __eq__ 등의 메소드를 클..
# 목적파이썬의 Packing & Unpacking 의 의미와 사용법 대해 정리를 하려고 한다. 산술 연산자로써의 *가 아닌 Packing & Unpacking을 위한 사용법을 살펴본다.우선 * 을 하나 사용하는 Packing과 Unpacking을 살펴보고, 두개 사용하는 경우를 살펴볼 예정이다.# Packing - *Packing은 함수에 전달할 인자의 개수를 유연하게 하기 위한 방법이다.sum_all(1, 2, 3, 4, 5)sum_all(1, 2, 3, 4, 5, 6, 7)Packing을 사용하지 않고 위 코드를 정상적으로 동작하기 위한 함수는 아래와 같다.def sum_all(a1=None, a2=None, a3=None, a4=None, a5=None, a6=None, a7=None): r..
최근 Python 딥다이브를 하면서 Python 동작 원리부터, cpython을 들여다보려는 노력을 하고 있다.너무 깊게 다이빙하다가 자꾸 올라오긴 하는데,,, 아무튼, 파이썬 언어의 동작 원리에 대한 이해 없이 코딩 테스트와 구현만 하다보니깐, 내가 파이썬을 제대로 쓰고 있는건가? 하는 의문이 들었다. 사실 Java나 Go를 배워보고 싶지만 시간도 없고, Python이라도 제대로 알고 넘어가자라는 생각으로 기초부터 단단하게 쌓으려는 노력 중이다. 오늘은 내가 작성한 Python Script가 어떤 과정을 거쳐서 실행되는지에 대해서 이해할 수 있었다.그 과정에서 Python도 컴파일을 한다라는 사실을 알게 되었고, 다른 언어와의 차이를 확인해봤다.# Python Interpreter파이..