티스토리 뷰

반응형

파이썬 클래스

안녕하십니까! Hun!입니다!


오늘은 파이썬에서 클래스를 사용하는 방법을 한번 알아보도록 하겠습니다. 먼저 클래스(Class)를 설명드리면 클래스란 객체의 틀로 설계도라고 생각하시면 됩니다. 예를 들어서 책을 만들기 위해서는 기본적으로 필요한 제조방법과 원리로 종이와 기술 및 공정들을 필요로 합니다. 하지만 이 제조방법 및 원리를 토대로 만든 책들은 모두 똑같지가 않고 책마다 표지와 두께, 내용, 글자 한 올까지 모두 다를 것입니다. 여기서 클래스는 제조방법 및 원리로 공통적 성격을 띄고 있고 객체는 생산된 책들로 독립적 성격을 띄고 있다고 이해하시면 편할 것 같다고 생각이 듭니다. 앞서 설명한 클래스는 프로그래밍 언어에서 많이 사용되고 있는데 이러한 언어를 흔히 객체지향 프로그래밍 언어라고 부릅니다. 그리고 이 객체지향 프로그래밍 언어 중에 대표적인 언어를 생각하시면 많은 분들이 아시는 자바(Java)를 떠올리실 것 같습니다. 하지만 파이썬도 객체지향 프로그래밍 언어이고 제가 지금 공부하는 언어라서 저는 자바를 대신해서 파이썬을 이용해 클래스를 표현해서 사용하여보겠습니다.



class Book_process:

    def setdata(self, title, content, page, cover_color):

        self.title = title

        self.content = content

        self.paga = page

        self.cover_color = cover_color


위의 클래스가 바로 파이썬 언어로 작성한 클래스의 예로 아까 말한 책의 기본 속성들을 표현하여 정의한 것입니다. 클래스에서 클래스의 이름은 관례적으로 맨 앞이 영어 대문자를 사용하고 클래스에는 여러가지 함수들이 포함됩니다. 저는 'setdata'라는 이름의 함수를 클래스 내부에 정의하여 책 제목과 내용, 페이지 수, 표지 색깔을 매개변수인 'title'과 'content', 'page', 'cover_color'로 입력받게 만들었습니다. 그럼 정의한 클래스를 한번 사용하여보겠습니다.


a = Book_process()

a.setdata('python', 'hello python', 500, 'blue')


사용방법은 정의한 클래스를 어떠한 이름에 대입하는 것입니다. 위의 예를 보면 'a'라는 객체 이름에 정의한 클래스인 'Book_process'를 대입하고 클래스의 'setdata' 함수의 매개변수에 데이터들을 입력한 것을 볼 수 있고 'a.title'을 실행해보면 'python'이 출력되는 것을 확인할 수 있습니다. 여기서 입력하는 데이터들은 4가지인 것에 비해 클래스 내부의 'setdata'의 매개변수는 'self'라는 변수를 포함하여 5가지라서 좀 이상하다고 생각하실 수 있을 것 같습니다. 이 'self'란 바로 객체를 가리키는 매개변수로 관례적으로 'self'라고 사용되고 물론 다른 말로 사용하셔도 상관없습니다. 위의 예시로 올라가보면 'self' 변수는 'a'라는 객체를 가리킨다고 이해하시면 됩니다. 저는 객체를 하나만 생성하였지만 다양하게 생성하여 그 결과를 확인할 수 있으니 한번 해보시기를 바랍니다. 이상으로 별 시덥잖은 내용이었지만 읽어주셔서 감사드리고 다음에 유익한 포스팅으로 찾아뵙도록 하겠습니다.

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함