강의로 돌아가기
-

__init__(), __str__()

init()는 타언어의 생성자,
str()은 타언어의 toString()이라고 생각하면 되는거죠???

그리고 파이썬은 클래스에 변수가 없어도 class.property = value면
클래스에 property라는 변수가 생성되는건가요??
다른언어는 선언하지 않으면 쓸수가 없어서 혼란스럽네요...

2 개의 답변
Demi

__init__은 생성자, __str__은 toString과 비슷합니다.

파이썬에서는 어떤 클래스 Ainstance a에 대해, class Ax라는 프로퍼티가 없어도 a.x = 3과 같이 사용할 수 있습니다.
나중엔 익숙해지실겁니다.

볶음캐슈넛

init 메소드가 앞 강의의 create 메소드를 대체한다면,
처음에 instance를 얻어 올 때, 명시적으로 메소드를 호출해야 하는 거 아닌가요? 혼란스럽네요.

** 앞의 강의
person = Human.create('''이름''',60.5)

** 이번 강의
person = Human('''이름''',60.5)

** 이해 안 되는 부분
person = Human.init('''이름''',60.5)

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.