티스토리 뷰
파이썬 클래스
안녕하십니까! 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'라는 객체를 가리킨다고 이해하시면 됩니다. 저는 객체를 하나만 생성하였지만 다양하게 생성하여 그 결과를 확인할 수 있으니 한번 해보시기를 바랍니다. 이상으로 별 시덥잖은 내용이었지만 읽어주셔서 감사드리고 다음에 유익한 포스팅으로 찾아뵙도록 하겠습니다.
'IT 공부 및 일상' 카테고리의 다른 글
예비군 1년차 동미참훈련 1일차 후기 (0) | 2018.05.11 |
---|---|
파이썬 클래스편2 - 생성자 (0) | 2018.04.26 |
국방부의 예비군 법 개정으로 동미참 신청한 휴학생 (0) | 2018.04.18 |
파이썬 함수편3 - 람다(lambda) 함수 (0) | 2018.04.15 |
파이썬 함수편3 - 값으로 사용되는 함수(미분함수) (0) | 2018.04.12 |
- Total
- Today
- Yesterday
- 애드센스
- 서치콘솔
- 애널리틱스
- 사이트맵
- 동미참
- 윈도우10
- 구글 웹마스터도구
- HTML
- RSS
- 태움
- MAC
- C언어 콘서트
- 애플
- vmware
- 구글
- 함수
- 이클립스
- 크롬
- sitemap
- 아나콘다
- 자바
- 학생예비군
- 웹마스터도구
- 네이버
- 인공지능
- C언어
- 가상머신
- 파이썬
- 안드로이드
- 예비군
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |