본문 바로가기
언어/Python

[Python] 클래스

by merona99 2018. 7. 25.
반응형

이번엔 프로그래밍의 꽃이라 불리는 클래스에 대해 공부하자!



*클래스

씨언어에서도 들어본 적이 없는 '클래스'...

클래스가 필요한 이유는 함수를 여러번 사용해야 할 때 이를 간단히 나타내기 위해서 인거같다.



-클래스--> 과자틀

-객채--> 과자틀에 의해 만들어진 과자들

&인스턴스? => 클래스에 의해서 만들어진 객체



<간단한 예>



여기서 클래스는 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

댓글