less than 1 minute read

파이썬의 일급객체는 다음과같은 조건을 만족한다.

변수나 데이터 구조안에 담을수있다.

def example():
    print('first-class citizen')
var = example
var()             # first-class citizen
print(var)        # <function example at 0x10613d5f0>

다음과같으 함수를 변수에 할당가능하다.

매개변수로 전달이 가능하다

def example():
    return 'first-class citizen'
def example2(func):
    print(func())
    print(func)
example2(example)

>>> first-class citizen
>>> <function example at 0x104ef7320>

위와같이 매개변수로 전달가능하다.

리턴값으로 사용될 수 있다.

def example():
    def example2():
        return "first-class citizen"
    
    return example2()
example()

>>> first-class citizen

외부함수 example 안에 내부함수가 있는데 return 값을 example2 로사용하는것을 볼수있다.

Categories:

Updated: