first-class란?

박준영·2021년 7월 19일

일급객체

일급 객체(first-class object)란 다음 조건을 만족하는 객체를 뜻합니다.

  • 변수나 데이터 구조에 넣을 수 있어야 한다.
  • 매개변수에 전달할 수 있어야 한다.
  • 반환값으로 사용할 수 있어야 한다.

우리는 변수(variable)를 쉽게 객체라고 생각합니다. 하지만 함수(function)도, 클래스(class) 등도 객체가 될 수 있다고는 생각하지 못합니다. 파이썬의 다른 기타 자료구조를 포함한 모든 것은 객체이기 때문에 무엇이든 함수의 인자로(argument) 전달 가능합니다.

def one(f):
        return f(2)
def triple(x):
        return x*3
result = one(triple)
print(result) #결과는 6

0개의 댓글