티스토리 뷰

python lecture/basic

[edu] attribute (속성)

burningrizen 2019. 2. 26. 15:27



클래스의 속성(변수, 함수)를  확인, 값을 얻거나 수정할 필요가 있다.


이런 기능을 제공하는 built in 함수들을 알아보자



class Custom:
a = 1
def b(self):
pass


이런 클래스가 있다고 하고



hasattr(Custom, 'b')

b 라는 어트리뷰트가 있는지 여부를 확인할 수 있다.


getattr(Custom, 'a')

a 의 값을 얻는다.


setattr(Custom, 'a', 9)


a 의 값을 9로 수정한다.


함수는 일급객체로 취급 되므로 b 도 다른 함수로 바꿀수 있다.


단 staticmethod, classmethod 가 아니라면 바꿀 함수의 맨앞의 인자에 self 를 두는걸 잊지 말자


클래스 함수에서 데코레이터를 내부에 인자에서도 마찬가지다.











'python lecture > basic' 카테고리의 다른 글

[edu] pass, continue (제어흐름)  (0) 2019.03.07
[edu] for문 (반복문, range)  (0) 2019.02.28
[edu] logging (로깅)  (0) 2019.02.25
[edu] duck typing(덕 타이핑)  (0) 2019.02.25
[edu] Stack/Queue (스택/큐 자료구조)  (0) 2019.02.24
댓글