markdown getter,setter,프로퍼티#python #tutorial
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown getter,setter,프로퍼티#python #tutorial相关的知识,希望对你有一定的参考价值。
# 프로퍼티를 이용한 getter/setter
마지막 라인에서 두 메서드를 name이라는 속성의 프로퍼티로 정의한다. property()의 첫번째 인자는 getter 메서드, 두 번째 인자는 seetter 메서드인다.
```python
class Duck():
def __init(self, input_name):
self.hidden_name = input_name
def get_name(self):
print('inside the getter')
return self.hidden_name
def set_name(self, input_name):
print('inside the setter')
self.hidden_name = input_name
name = property(get_name, set_name)
```
# 데커레이터를 이용한 getter/setter
- getter 메서드 앞에 @property 데커레이터를 쓴다.
- setter 메서드 앞에 @name.setter 데커레이터를 쓴다.
```python
class Duck():
def __init(self, input_name):
self.hidden_name = input_name
@property
def name(self):
print('inside the getter')
return self.hidden_name
@name.setter
def name(self, input_name):
print('inside the setter')
self.hidden_name = input_name
```
또한 프로퍼티는 계산된 값을 참조할 수 있다.
```python
class Circle():
def __init__(self, radius):
self.radius = radius
@property
def diameter(self):
return 2 * self.radius
```
```
c = Circle(5)
c.radius # 5
c.diameter # 10
```
속성에 대한 setter 프로퍼티를 명시하지 않으면 외부로부터 이 속성을 설정할 수 없다.
```
c.diameter = 20 # error!
```
以上是关于markdown getter,setter,프로퍼티#python #tutorial的主要内容,如果未能解决你的问题,请参考以下文章
markdown bash프로파일설정파일차이
java [안드로이드]프래그먼트
swift 패스트캠퍼스iOS프로젝트캠프 - 교재에없는Swift예시
python [已弃用]코레일승차권검색및프프로그램.https://github.com/devxoul/korail
markdown 터미널프롬프트변경
markdown 스택프레임