Person이라는 클래스를 선언합니다(#1). 클래스 이름은 첫 글자를 대문자로 하는 것이 관용입니다. 객체 지향 프로그래밍(줄여서 OOP)에서는 클래스로 묶이는 변수를 프로퍼티(property) 또는 멤버 변수 혹은 멤버(member)라고 부릅니다. 파이썬에서는 멤버를 사용하므로 이 책에서는 ‘멤버’라고 부르겠습니다. 특히 객체가 가지는 멤버를 인스턴스 멤버(instance member)라고 합니다.
__init__() 함수는 생성자(constructor)라고 부르는 특별한 함수입니다(#2). 앞뒤로 언더바( _ )가 두 개 있는 함수는 파이썬이 예약해 두었다는 의미입니다. 생성자의 역할은 인스턴스 멤버를 초기화하는 것입니다.
self는 객체 자신을 의미합니다(#3). 생성 중인 객체에 name과 money라는 멤버를 만들고 전달받은 인자들로 할당합니다.
OOP에서는 클래스에 묶이는 함수를 행동(behavior), 멤버 함수, 메서드(method)라고 부릅니다. 파이썬에서는 메서드를 사용합니다. 또한 멤버와 메서드를 합쳐 속성(attribute)이라고 부릅니다.
#4부터 나오는 give_money(), get_money(), show() 함수는 모두 객체가 갖게 될 메서드입니다.