파이썬 기능 속성은 속성입니다 : 속성은 내부 논리 연산의 일련의 결과는 결국 반환합니다 속성.
속성 변성 인스턴스 메소드가 호출 사용하여, 상기 인스턴스 특성과 동일 할 수있다
속성 사용 1-- 장식 방법
클래스에 응용 프로그램 @property 장식 인스턴스 방법
class Test:
def __init__(self):
self.__num = 100
@property
def num(self):
print("--get--")
return self.__num
@num.setter
def num(self, num):
print("--set--")
self.__num = num
t = Test()
print(t.num)
t.num = 1
"""
--get--
100
--set--
"""
정의하고 다음 사항에주의해야한다 재산에게 속성을 호출 :
- 오직 자기 파라미터를 첨가하는 방법의 예에 의거 @property 데코 정의.
- 당신이 호출 할 때 괄호가 필요하지 않습니다.
- 개질 방법 @property에 해당 하나의 접근 방법에있어서, 고전 속성.
- 새로운 클래스 속성은이 세 가지 접근 방법이며, 각각 세 @ 속성에 대응된다 @ 방법 .setter 이름, 방법 이름의 수정 @ .deleter 방법.
파이썬의 클래스 고전 클래스와 새로운 클래스, 풍부한 클래스 고전적인 특성보다는 재산의 새로운 클래스. (클래스 개체를 다음과 같은 경우, 클래스는 새로운 클래스 인), 클래스는 새로운 클래스입니다 python3.
속성 사용 2-- 클래스 속성 방법
당신은 클래스 속성 방법, 클래식과 구별없이 새로운 클래스를 사용하여 속성 속성을 만들 때
class Test:
def __init__(self):
self.__num = 100
def setNum(self, num):
print("--set--")
self.__num = num
def getNum(self):
print("--get--")
return self.__num
# 注意:要先写get方法,再写set方法
aa = property(getNum, setNum)
t = Test()
print(t.aa)
t.aa = 1