파이썬101

    [python] 파이썬 class의 __call__ 함수 (매직메소드)

    파이썬을 다루다보면 __call__함수에 직면하는 경우가 생깁니다. 저와 같은 데이터 사이언티스트의 경우에는 __call__함수는 Tensorflow의 def call() 메서드나 PyTorch의 def forward() 메서드가 대표적이라고 할 수 있는데요. 인스턴스를 생성하고 자동으로 클래스의 객체도 호출할 수 있게 만드는 기능입니다. 아래처럼 리스트를 받아 난수 10개를 뿌려주는 난수생성기 클래스로 표현되었다고 생각해봅시다. 인스턴스 메서드 구현 아래처럼 pick 메서드를 활용할 때, 출력물이 생성되고, 10개의 난수를 담은 리스트가 리턴되는 것을 확인할 수 있습니다. import random class RandomNumberReturn: def __init__(self): self.numbers ..