@property
파이썬에서는 @property 데코레이터를 이용하여 위의 get , set 메소드보다 더욱 직관적으로 표현이 가능하다.
class Person :
def __init__(self):
self.__name = 'hong'
@property
def name(self):
return self.__name
@name.setter
def name(self, name):self.__name = name
person = Person()
print(person.name) # hong
person.name = 'park'
print(person.name) # park
get의 역할은 property , set의 역할은 setter가 한다.
property 가 setter 보다 윗줄에 사용되어야 한다.
흔히 우리가 아는 Java 에서는 getfunction, setfunction 이라는 method를 무조건 쓰게 되어있다. value를 가지고 올 때는 get method, value를 새로 설정할 때는 set method를 쓰게 되어있다.
python은 그것을 property, function.setter 로 쓰게 되어있다.
'대학원 공부 > programming language' 카테고리의 다른 글
Web : 정적 page VS 동적 page (0) | 2020.05.09 |
---|---|
Python : Package 만들기 (0) | 2020.05.06 |
Python : raise (0) | 2020.04.21 |
Python : inheritance, 상속 : 부모 class 자식 class (0) | 2020.04.21 |
Python : Crawling : requests vs urllib.parse & request (0) | 2020.04.21 |
댓글