Category: Python, Perl, Shell script..

Python: Name Mangling

역시나, 아주 간단하게 정리해본다. 왜 Mangle 이란 다소 애매한 단어를 붙여서 한눈에 이해가 안되게 만들었을까? 물론, 애초에 Expansion 이라 붙였다해도 이해가 안되기는 마찬가지였겠지. Mangle 에는 크게 두가지 뜻이 있다. 하나는 모양이 바뀔 때까지 강한 힘으로 부서뜨리거나 으스러 뜨려서 원래 모습을…

Continue Reading Python: Name Mangling

Python: @classmethod

이걸 뭐에 어떻게 쓰는지는 아직 잘 모르겠다.programiz.com 을 참고하여 늘 그렇듯 간단하게만 정리해본다. 소스는 위 페이지에서 가져왔다. classmethod 를 정의하는 방법도 두가지다. 허나, 데코레이터를 사용하는 방식(@classmethod)만을 정리하기로 한다. 다른 방법은 위 글에 나와있다. 위에 staticmethod 도 같이 나와있다. classmethod 를…

Continue Reading Python: @classmethod

Python: defaultdict 사용과 __call__ 메소드.

간단하게 생각해서, 그냥 dictionary 보다는 defaultdict 를 사용하는 편이 여러모로 편하다.RealPython 을 참고하여, 몇가지만 정리하려한다. defaultdict 는, 키가 없는 dict 를 참조했을 때 KeyError 가 발생함을 방지하려는 목적이 기본이다.예를 들어, 다음과 같이 기본 dict 로 작업하면 오류가 발생한다. aa[‘name’] =…

Continue Reading Python: defaultdict 사용과 __call__ 메소드.

Python: 숫자에 밑줄 넣기.

이건 뭐?또, 이건? 둘 다 정수 ‘백만’을 뜻한다. Python 3.6, Pep 515 부터 생긴 규정이라는데, 숫자를 좀 더 읽기 쉽게 하기 위함이라고 한다.따라서, 서양 규격에 맞춰버려 몇십년째 불편함을 감수하고 있는 숫자 천단위 끊기도, 적어도 파이썬에선 한국(동양?)식 만단위 끊기로 바꿀 수…

Continue Reading Python: 숫자에 밑줄 넣기.

Python: Decorator ?

Decorator 는 말 그대로, 다른 함수에 살짝 장식(양념?)을 하는 개념이라 생각하는게 좋겠다. 제대로 써본 적이 없어서 지금 단계에선 뭐라 말하기가 어렵지만.. 책들 설명에 따르면, 주로 버그를 찾을 용도(Debugging)로 사용된다고 한다.Introducing Python(1st Ed.) p99 에는 이렇게 설명이 나와있다. A decorator is…

Continue Reading Python: Decorator ?

Python: f string 문자열 정렬

이건 꼭 f string 에만 적용되는 형식은 아니고, 범용으로 쓰이는 방식이다. 간단 명료!

Continue Reading Python: f string 문자열 정렬

Python: Iterable, and Iterator

** 원 글은 이글루스. 살짝 고치고, 조금 덧붙였다. 파이썬을 공부하다가 첫번째로 부딪히게 되는 관문이 바로 이것이 아닐까..다른 이들은 어떤지 모르겠지만, 적어도 나는 여기서 한동안 전진을 하지 못했었다.꼭 이걸 알아야 다음으로 넘어갈 수 있는 건 아닌데.. 뭐든 공부라는 것이 한단계 한단계…

Continue Reading Python: Iterable, and Iterator

Python 3.8: Assignment Expressions, a.k.a Walrus Operator

이 내용은 Effective Python(2nd) 에서 가져왔다. Python 3.8 부터 새로 추가된 기능이라는데, Assignment Expression 이라는게 있다. 말 그대로, 새로운 할당법이다. 선할당, 후검토랄까. 다음 코드를 보자. 별 게 없는데, Effective Python 의 저자는 이 코드를 ‘It is noisier than it needs…

Continue Reading Python 3.8: Assignment Expressions, a.k.a Walrus Operator

Python : repr 과 str. 간단 정리.

이 둘이 뭘 의미하는지에 대해선, 길고 지루하고 어려운 논의가 많다.하지만, 그건 원론, 또는 학술의 관점에서 그렇다는 얘기고, 내 선에선 이렇게만 알면 되겠다. ‘이렇게’는 아래 코드로 대신한다. 코드는 Beyond the Basic stuff with Python 에서 가져왔다. WizCoin 이라는 클래스를 만들고, 객체를…

Continue Reading Python : repr 과 str. 간단 정리.

Python : reflected dunder method 실행조건

파이썬을 사용하여 Operator Overloading 을 시도하려면, dunder(Double Underscore) method 를 사용하면 된다. def __add__ 등으로 가능한데, 교환법칙(Commutative)이 되는 덧셈/곱셈등은 관계없는 경우도 있지만, 그렇지 않은 뺄셈/나눗셈등을 할 때는, 연산 위치를 신경써줘야 한다. 예를 들어, Class Object 오른쪽에 연산이 가능하게 설계했을 경우,…

Continue Reading Python : reflected dunder method 실행조건