이번엔 프로그래밍의 꽃이라 불리는 클래스에 대해 공부하자!
*클래스
씨언어에서도 들어본 적이 없는 '클래스'...
클래스가 필요한 이유는 함수를 여러번 사용해야 할 때 이를 간단히 나타내기 위해서 인거같다.
-클래스--> 과자틀
-객채--> 과자틀에 의해 만들어진 과자들
&인스턴스? => 클래스에 의해서 만들어진 객체
<간단한 예>
여기서 클래스는 Simple이고 인스턴스는 a가 됨.
여기서 한 기업이 'ht는 배꼽이 두개'라는 비밀을 가지고있다고 하자.
가입한 고객에게만 이 비밀을 말해준다고 할때,
pey라는 아이디로 기업에서 제공하는 저 정보를 얻어내고자 한다면
아이디 이름에다가 서비스 업체가 제공하는 secret이라는 변수를 '.'를 이용해서 호출했더니 어마어마한 비밀을 얻을 수 있었다.
#(오타는 가볍게 못본척 넘어가도록 하자ㅎㅎ)
*클래스 내 함수의 첫 번째 인수는 무조건 self로 사용해야 인스턴스의 함수로 사용할 수 있음.
왜 굳이 그래야 하는진 모르겠지만 파이썬만의 특징이라고 하니 그냥 알아두자.
//클래스 개념이해하는게 참 어렵다..
*클래스 함수 = 메서드(Method)
위 그림으로 객체 a가 Bee클래스의 인스턴스 임을 알 수 있음.
*__init__
=> 인스턴스를 만들 때 항상 실행된다.
이번에는 클래스에서 배운 것들을 바탕으로 "김씨네 집"클래스를 완성 해 볼 것이다.
위에 적지않은 것들도 좀 있다.
-스토리=>
"박응용은 부산에 놀러 가고
김줄리엣도 우연히 3일 동안 부산에 놀러 간다.
둘은 사랑에 빠져서 결혼하게 된다.
그러다가 바로 싸우고 이혼을 하게 된다."
<만들어진 '박씨네 집'클래스>
// __add__ : 연산자 오버로딩 사용부분
<프로그램 실행 부분>
<결과값>
//어제 올릴려다가 자버린 부분 ㅎㅎ
책에서는 클래스가 쉽다는데 난 왜 이해하는데 한참이나 걸린거지.. 복잡하담 ㅋㅋ
'언어 > Python' 카테고리의 다른 글
[Python] 패키지 (0) | 2018.07.26 |
---|---|
[Python] 모듈 (5) | 2018.07.25 |
[Python] 함수, 입출력, 파일처리방법 (6) | 2018.07.24 |
[Python] 제어문 (0) | 2018.07.24 |
[Python] 자료형 (0) | 2018.07.23 |
댓글