Home
sehyeong.lee
Cancel

metaclass - 2

Python의 MetaClass에 대한 글 - 2 개요 지난 글에서는 모든 클래스의 클래스는 metaclass이다라는 의미에 대해서 간단히 알아보았다. 해당 글에서는 metaclass인 type의 사용법과 어떻게 활용될 수 있는지에 대해 예제와 함께 설명한다. class키워드 없이 class 만들기 - 1 지난 글에서 모든 클래스는 type 클래스...

metaclass

Python의 MetaClass에 대한 글 개요 python metaclass에 대해 검색해보면 가장 많이 나오는 개념적인 정의는 다음과 같다. python의 metaclass는 클래스를 만드는 클래스이다. 해당 글에서는 클래스를 만든다라는 것에 대한 의미에 대해 간단하게 설명한다. Python에서 클래스는 객체이다. >>> cl...

name mangling과 접근 제어자

python에서 접근 제어자를 지정하는 방법과 Naming Mangling에 대한 글 개요 Java나 CPP와 같은 OOP 언어에서 public, private, protected와 같은 keyword로 멤버 변수의 접근을 제어한다. python은 인터프리터 언어로 따로 이런 접근 제어자(Access Modifier) keyword가 존재하지 않는다...

python with 구문과 Context Manager

python의 with문의 동작을 Context Manager와 함께 알아본다. 개요 python을 통해 file 읽기 쓰기를 할 때 open 함수를 with문을 통해서 사용하는 예제를 볼 수 있다. with문을 사용하면 close()를 자동으로 해준다라는 설명도 봤을 것이다. open 함수가 with문에서 어떻게 동작하는지에 대해서 알아보자. ...

pytest module not found error

pytest 실행시 발생하는 ModuleNotFoundError에 대한 글 개요 FastAPI test code를 작성하고 pytest로 확인하는 과정에서 ModuleNotFoundError가 발생했다. project structure 아래와 같다 ├── src │   ├── exceptions.py │   ├── main.py │   ├── m...

Python Build System

Python Project를 build하는 방식에 대한 히스토리와 방법 소개 개요 python project를 build하는 방법에 대해서 찾아보면 여러가지 방법이 나온다. distutils, setuptools, poetry를 이용한 방법을 찾을 수 있다. 간단히 요약해보면 setup.py를 사용하는 방법은 legacy가 되었고, 현재는 distu...

PythonProject PyPI에 배포하기

PyPI(The Python Packages Index)에 내가 개발한 python project 배포하기 개요 python으로 개발을 하는 누구나 pip를 통해서 유용한 package를 설치하고 import 해서 개발해본 경험이 있을 것이다. 해당 글에서는 무심코 사용해 왔던 pip에 대해서 간단히 설명하고, 또한 직접 개발한 module을 다른 ...

vscode custom snippets 설정

블로그를 markdown으로 쓸때 여러 md 포맷을 활용해야 하는 경우가 많은데 해당 포맷들을 vscode에서 custom snippet으로 등록하기 Snippets 파일 선택 File -> Preferences -> User Snippets -> 원하는 Language 선택 Snippet 등록 with snippet-genera...

k3s 구성하기

kubernets 실습 및 스터디를 위한 간단한 k3s 구성하기 k3s란 k3s는 비교적 설치가 간단하고 IoT, edge computing 디바이스위에서 동작하도록 만들어진 경량 쿠버네티스이다. 구성 OS : ubuntu 22.04 1개의 master 노드와 2개의 worker 노드로 구성 사전 준비 k3s 공식 docs에 cluster 구성을...