
Yac::__set 메서드는 객체의 속성을 설정할 때 호출되는 메서드입니다.
객체의 속성을 설정할 때, 속성이 이미 존재하는 경우 __set 메서드가 호출되지 않습니다.
객체의 속성이 존재하지 않는 경우, __set 메서드가 호출됩니다.
예를 들어, 다음과 같이 객체를 생성하고 속성을 설정하는 코드를 작성할 수 있습니다.
#hostingforum.kr
python
class Test:
def __init__(self):
self.a = None
def __set__(self, instance, value):
print("속성이 설정되었습니다.")
self.a = value
obj = Test()
obj.a = 10 # __set 메서드가 호출되지 않습니다.
print(obj.a) # 10
obj.b = 20 # __set 메서드가 호출됩니다.
print(obj.b) # 20
위 코드에서, obj.a = 10은 obj.a가 이미 존재하는 속성을 설정하는 코드이므로 __set 메서드가 호출되지 않습니다. 하지만 obj.b = 20은 obj.b가 존재하지 않는 속성을 설정하는 코드이므로 __set 메서드가 호출됩니다.
2025-06-04 20:37