Skip to Content
전문가를 위한 파이썬(2판)
book

전문가를 위한 파이썬(2판)

by 루시아누 하말류, 강권학
November 2024
Beginner to intermediate
1064 pages
25h 21m
Korean
Hanbit Media, Inc.
Content preview from 전문가를 위한 파이썬(2판)
990
5
메타프로그래밍
>>> obj.over_no_get
9
❶ 이 오버라이딩 디스크립터에는
__
get
__( )
메서드가 정의되지 않았으므로,
obj
.
over
_
no
_
get
을 읽으
면 클래스의 디스크립터 인스턴스 자체가 반환된다.
❷ 관리 대상 클래스를 통해 디스크립터 인스턴스를 읽을 때도 마찬가지다.
obj
.
over
_
no
_
get
에 값을 설정하면
__
set
__( )
디스크립터 메서드가 호출된다.
❹ 여기에서 구현한
__
set
__( )
메서드는 값을 변경하지 않으므로,
obj
.
over
_
no
_
get
을 다시 읽을 때 여
전히 관리 대상 클래스의 디스크립터 인스턴스가 반환된다.
❺ 인스턴스의
__
dict
__
를 통해
over
_
no
_
get
이라는 인스턴스 속성을 설정한다.
❻ 이제
over
_
no
_
get
인스턴스 속성이 디스크립터를 가리지만, 읽기 연산만 가린다.
obj
.
over
_
no
_
get
에 값을 할당하려 하면 여전히 디스크립터의
__
set
__( )
메서드를 거친다.
❽ 그러나 읽기 연산에서는 동일한 이름의 인스턴스 속성이 있으므로 디스크립터가 가려진다.
23
.
3
.
3
논오버라이딩 디스크립터
__set__( )
메서드를 구현하지 않는 디스크립터는 논오버라이딩 디스크립터다. 동일한 이름
의 인스턴스 속성을 설정하면 디스크립터를 가리므로, 그 인스턴스에는 디스크립터가 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

전문가를 위한 리액트

전문가를 위한 리액트

테자스 쿠마르
고성능 파이썬(2판)

고성능 파이썬(2판)

오현석, 미샤 고렐릭, 이안 오스발트

Publisher Resources

ISBN: 9791169211772