더북(TheBook)

이제 초기화 함수를 만들어 두었으니 초기화 함수가 잘 실행되는지 확인해 보겠습니다.

> robot1 = Robot()
robot 객체가 만들어집니다.

객체가 생성되는 순간에 __init__ 함수 안에 작성한 코드가 실행됩니다. 여기서 알 수 있는 사실은 __init__ 함수는 클래스 내에 만들어 두면 프로그래머가 명시적으로 호출하지 않아도 자동으로 실행된다는 것입니다.

또 한 가지 __init__의 중요한 역할은 객체를 생성할 때 변수를 입력받을 수 있도록 설정할 수 있습니다. 지금까지는 따로 초기화 함수를 만들지 않아서 아무 값도 전달하지 않아도 객체를 생성할 수 있었습니다.

robot1 = Robot()

하지만 다음과 같이 초기화 함수를 만들 때 name 변수를 입력받도록 한다면, 객체를 생성할 때 name으로 사용할 값을 전달해야 객체를 생성할 수 있습니다.

> class Robot:
>     def __init__(self, name):
>         print("robot 객체 {}이(가) 만들어집니다.".format(name))
>
> robot1 = Robot("첫째로봇")
robot 객체 첫째로봇이(가) 만들어집니다.
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.