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

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

by 루시아누 하말류, 강권학
November 2024
Beginner to intermediate
1064 pages
25h 21m
Korean
Hanbit Media, Inc.
Content preview from 전문가를 위한 파이썬(2판)
992
5
메타프로그래밍
[예제
23
-
12
]는 속성의 읽기와 쓰기에 관련된 또 다른 비대칭성을 보여 준다. 클래스 속성을
읽는 것은 관리 대상 클래스에 연결된 디스크립터의
__get__( )
메서드가 통제하지만, 클래스
속성에 쓰는 연산은 관리 대상 클래스에 연결된 디스크립터의
__set__( )
메서드가 통제할 수
없다.
TIP
클래스 속성에 저장하는 연산을 통제하려면 클래스의 클래스(즉, 메타클래스)에 디스크립터를 연결해
야 한다. 기본적으로 사용자 정의 클래스의 메타클래스는
type
이며,
type
에는 속성을 추가할 수 없다.
24
에서는 메타클래스를 직접 만들어본다.
이제 파이썬에서 디스크립터를 사용해서 메서드를 구현하는 방법을 알아보자.
23
.
4
메서드는 디스크립터
모든 사용자 정의 함수는
__get__( )
메서드를 갖고 있기 때문에 인스턴스를 통해 호출하면
클래스 안의 함수는 바운드 메서드
bound
method
가 된다. 따라서 클래스에 연결된 사용자 정의 함
수는 디스크립터로 작동한다. [예제
23
-
13
]에서는 [예제
23
-
8
]에서 만든
Managed
클래스의
spam( )
메서드를 읽는 예를 보여 준다.
예제
23-13
메서드는 논오버라이딩 디스크립터
>>> obj = Managed()
>>> obj.spam
<bound method Managed.spam ...
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