티스토리 뷰
파이썬으로도 Object-Oriented programming(객체지향 프로그래밍)을 할 수 있는데요 Class를 사용하기 위한 기본적인 개념을 정리했습니다.
self
self는 class의 instance를 가리킵니다.
self의 id와, instance의 id 값이 같게 지정된것을 확인하면 이해할 수 있습니다.
1
2
3
4
5
6
|
class WhatIsSelf:
def __init__(self):
print 'self:', id(self)
w = WhatIsSelf()
print 'instance:', id(w)
|
cs |
self: 4417518624
instance: 4417518624
__init__ method
init은 initialize method(초기화 메서드)를 말합니다.
class를 생성했을때 초기화를 시켜주는 특수한 메서드 입니다.
메서드는 일반함수와의 구분을 위한것으로 클래스의 함수를 메서드라고 칭합니다.
Exercise
1
2
3
4
5
6
7
8
9
10
11
12
|
class Friends:
def __init__(self, name, age, job='Unemployed'):
self.name = name
self.age = age
self.job = job
def hasJob(self):
if self.job=='Unemployed':
pass
else:
print "Job : %s" % (self.job)
f = Friends('Chloe', 30, 'Programmer')
|
cs |
- Friends class를 생성했습니다.
- __init__ method의 첫번째 인자는 self입니다.
- __init__method가 name, age, job을 초기화합니다.
- job 인자가 입력되지 않을 경우 'Unemployed'기본인자를 사용하도록 하였습니다.
- hasJob() method는 직업이 없으면 넘어가고, 직업이 있으면 직업정보를 프린트합니다.
- Friends class를 f라는 instance(객체)로 만들었습니다.
- f instance를 이용해서 hasJob() method를 사용할 수 있습니다.
> f.hasJob()
Job : Programmer
- instance(객체)의 필드를 확인하고 싶으면 내장함수 vars()를 사용합니다. dictionary로 들어있음을 알 수 있습니다.
> vars(f)
{'job': 'Programmer', 'age': 30, 'name': 'Chloe'}
'python' 카테고리의 다른 글
python | format 함수를 사용하지 않고 10진수를 2진수로 변환하기 (0) | 2020.08.05 |
---|---|
python | format 함수를 사용한 2진수 8진수 16진수 변환 (0) | 2020.08.05 |
python | 재귀함수(recursive function)를 이용한 팩토리얼(factorial) (0) | 2020.08.03 |
python | if 조건문 없이 짝수번, 홀수번 찾는 더욱 간단한 방법 (0) | 2020.07.31 |
python | 몇개인지는 모를 여러개의 인수를 받는 방법 (0) | 2020.07.30 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- SEQ
- RStudio
- 코로나바이러스
- Cast
- 2진수
- 데이터
- BIOINFORMATICS
- geom_bar
- 팟빵
- Coding
- data
- 엑셀
- coronavirus
- r
- plot
- geom_line
- Heatmap
- Command
- format
- comma
- Python
- visualizing
- Visualization
- hist
- Order
- for loop
- Excel
- 숫자
- 파이썬
- covid
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함