함수 인트로스펙션

매일 공부(ML)·2022년 12월 2일
0

Fluent Python

목록 보기
33/130

객체로서의 함수

일급함수

함수 인트로스펙션

함수 객체는 doc이외에도 많은 속성을 갖고 있고 dir()함수가 factorial() 함수에 대해서 공개

dir(factorial)

대부분 파이썬 객체에 존재하는 속성으로 함수를 객체로 다루는 것과 관련된 속성을 살펴보면 되므로 dict 속성을 살펴라

사용자 정의 클래스의 객체와 함수는 dict 속성을 이용해서 객체에 할당된 사용자 속성을 보관하고 이 속성은 기본적인 애너테이션 형태로 쓸모가 많고, 장고와 같은 프레임워크는 이 기능을 사용한다.

def uppper_case_name(obj):
	return ("%s %s" % (obj.first_name,obj.last_name)).upper())
upper_case_name.short_description = 'Customer name'

#일반 객체에는 존재하지 않는 함수 속성 나열하기

class C:pass
obj= C()
def func(): pass
sorted(set(dir(func)) - set(dir(obj))

파이썬이 함수 매개변수를 선언하고 인수 전달

profile
성장을 도울 아카이빙 블로그

0개의 댓글