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

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

by 루시아누 하말류, 강권학
November 2024
Beginner to intermediate
1064 pages
25h 21m
Korean
Hanbit Media, Inc.
Content preview from 전문가를 위한 파이썬(2판)
405
9
데커레이터와 클로저
elapsed = time.perf_counter() - t0
name = func.__name__
args = ‘, ‘.join(repr(arg) for arg in _args)
result = repr(_result)
print(self.fmt.format(**locals()))
return _result
return clocked
❶ 바깥쪽에 있던
clock
()
함수 대신
clock
클래스가 매개변수를 받는 데커레이터 팩토리가 되었다. [예제
9
-
24
]의 데커레이터를 사용하는 코드에서 바로 쓸 수 있도록 클래스의 첫 글자를 소문자
c
로 사용했다.
clock
(
my
_
format
)
에 전달했던 인수가 여기에서는
fmt
매개변수에 할당된다. 클래스 생성자는
my
_
format
self
.
fmt
에 저장한
clock
의 인스턴스를 반환한다.
__
call
__( )
메서드는
clock
인스턴스를 콜러블로 만든다. 호출되면 인스턴스가 데커레이트할 함수를
clocked
()
로 치환한다.
❹ 데커레이트된 함수를 래핑한
clocked
()
가 원래 함수를 호출한다.
이로써 함수 데커레이터를 충분히 살펴본 것 같다. 클래스 데커레이터는
24
장에서 다룬다.
9
.
11
요약
이 장에서는 약간 어려운 부분을 다뤘다. 되도록 순조롭게 진행하려고 노력했지만, ...
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